导航:this super instanceOf 接口 包装类 String
1.this:指当前对象。
用法:①用于成员方法之间的相互调用 this.XX()
②用于给当前对象的成员变量赋初始值 this.属性
③调用本类中的构造方法 this()
2.super:指父类对象
用法上和this的用法极为相似。
无参构造方法中,会默认调用super(),意思是:调用父类的方法。
3.Instanceof:有道翻译是 实例
两个作用:①判断一个实例对象是否属于一个类
②判断一个类是否实现了某个接口
4.接口:抽象方法和常量值的集合。使用使用Inteface修饰接口。接口要被类实现。必须要重写接口所有的抽象方法。
接口和抽象就是两兄弟,各自有各自的特点,常会提到他们之间的区别。前面总结提到过,问到区别,就把他们之间的概念讲一遍。
接口的概念,例如电脑主机上的接口,有U盘,鼠标,键盘,话筒,耳机等等。就好比生产主机的厂商创建了这么多接口,包括了很多抽象方法,具体的功能并没有规定。键盘想要使用,就必须和厂商达成一致,实现这个接口,好的键盘就好比实现了这个接口更多的定制化方法。
5.包装类:八大基本数据类型对应的类类型。
(除了char对应character,int对应Integer,其他类型首字母大写)
①能够然数据具有对象的特征(也就是可以调用方法了)
②实现字符串和基本数据类型的转换
字符串转为基本数据类型 (三种方法)
①Integer ii = new Integer(str);//使用构造方法
②使用parseXXX方法进行转换 //提到类型转换,就会想到这玩意儿
③使用valueOf方法进行转换
基本数据类型转为字符串 (二种方法)
①加上+“” //最为简单。int i =0;String str = i+"";
②toString()//int i = 0; String str = Integer.toString():
自动装箱:Integer i = ① Integer.valueOf(1)②new Integer(1)②1(JDK1.5以上)
自动拆箱:Integer ii ; ①Int i = ii.IntValue() ②int i = ii;
缓冲区范围:-128 ——127
6.代码块:一个没有名字的作用域。
非静态代码块①可以定义在方法体中,方法内部的作用域
②可以定义在类中,构造代码块。
特征:只能在创建对象时,调用一次,一般用于初始化工作
在构造方法中之前执行。
给变量赋初始值,给final空白赋值
静态代码块 ①使用static修饰的代码块
②只在类加载时加载一次,所有权时属于类的。
给出执行顺序的结论:静态代码块(1次)——>main——>构造代码块——>构造方法——>普通方法
尝试给下面的代码结果排个序
类的加载顺序静态代码块会在类加载的时候调用,并且只加载一次。然后到main方法中,创建对象,构造代码块在创建对象时优先加载。最后调用无辜的构造方法。
执行顺序结果可以思考如何 统计创建对象的次数。
可以思考如何 外部类不通过new关键字创建对象。
7:String:操作字符串的类.
①创建对象 String str = new String(); 构造方法里的参数可以放byte、char数组。
String str = "字符串";
②长度 length
③指定下标的字符 charAt(index)
④字符串转为字符数组 toCharArray()
⑤截取字符串(左包右不包) subString(开始下标,结束下标)
(Java所有关于范围的方法,右边的范围,即最后一个不包含)
⑥分割字符串成字符串数组 split(“,”)
String和很多类都有着关系,例如String和Integer、Date、Array转换等等。compareTo(),getBytes(),replace(),trim()都是常见的方法。
举个栗子
如何在用户输入一行字符串后,统计数字,大写字母,小写字母,其他字符的次数
统计字符串的类型测试结果。运用了一个toCharArray()方法,变为字符数组,然后遍历,循环判断并统计。
测试结果当我开始总结的时候,内容越记越多,总是记不全。笔记这玩意还是得多翻阅,并且和例子结合起来,才能温故而知新。
网友评论