类和对象:
1.一个java文件中可以定义多个class类,但只能有一个类是public修饰,而且
public修饰的类名必须成为代码文件名。
!!!!实际开发中建议还是一个文件定义一个class类!!!!
2.类中成员不赋初始值,则其为默认值:
byte/short/int/long:0
double/float:0.0
boolean:false
String:null。
3.类的构造器分有参数和无参数两种,若不特殊定义,则默认存在无参数构造
器,若定义了有参数构造器,则原来的无参数构造器消失,需重新自定义。
4.this关键字用于:方法的形参名与类内定义的元素(变量)重名时,使用
this.元素(变量)名 与形参名区分。
5.类内定义的元素(变量)一般需要private修饰,使其不可直接在其他类中读
写,(目的是保护变量值。)这时需要在类内定义get 和set方法,使得在其他
类内可以读写变量的值。(此步骤在编译工具内一般设有快捷键,一步到位。
)
6.Java中权限修饰符主要包括private、public、和protected,类中成员和变
量的访问权限如下表所示:
类修饰符
访问包位置 private protected public
本类 可见 可见 可见
同包其他类或子类 不可见 可见 可见
其他包的类或子类 不可见 不可见 可见
注:当类不使用修饰符设置累的权限时,则默认为protected型。
如果类的权限很小,比如为private型修饰的,那么类的权限设定会约束这个类
内权限设置大(更宽泛和更公开)的成员,比如,privat型的类会使其内成员
的public和protected修饰无效。
而public类型的类无法限制private和protected修饰的成员。
通俗理解:权限连类都访问不了,当然无法访问类内的成员。
标准JavaBean:
实体类,其对象可以用于在程序中封装数据。
java中书写标准JavaBean必须满足如下要求:
1.成员变量必须用private修饰;
2.提供每一个成员变量对应的setxx()/getxxx();
3.必须提供一个无参构造器。
类中成员变量若使用static修饰,则该成员变量为静态成员变量,仅属于此类,而不属于此类的对象。可以通过对象名访问,但是不推荐,建议直接使用类名来访问,因
为其值唯一,类似全局变量。
String:
1.String类型的字符串常量对象是不可变的。
2.使用有参数构造器new出来的String类型的对象地址不同,这与对象本身是否
相同无关。
3.Java存在编译优化机制,在常量对象相加赋值时,会自动合成。
例如:
String a=“abc”;
String b=“a”+“b”+“c”;
此时,会自动将“a”+“b”+“c”编译为“abc”。
故总过程仅有一个对象会生成,而“a==b”结果也会是true。
注:此过程仅适用于常量赋值,若事先有c=“ab”;则String b=c+“c不会发
生上述过程,a==b结果也会是false”。
4.String a=new String(“abc”);此过程创建了两个对象,一个是“abc”
常量,另一个是构造器new出来的对象,直接放在堆内存中。