-
构造方法
使用new+构造方法 创建一个新的对象
构造方法是定义在java类中的一个用来初始化对象的方法
构造方法与类同名且没有返回值
无参构造方法的使用
带参构造方法的使用
当没有指定构造方法时,系统自动添加无参的构造方法
当有指定构造方法,无论是有参,无参的构造方法,都不会自动添加无参的构造方法
构造方法的重载:方法名相同,但参数不同的多个方法,调用时会自动根据不同的参数选择相应的方法
构造方法不但可以给对象的属性赋值,还可以保证给对象的属性赋一个合理的值
查看全部 -
方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的
内部可见,即只在该方法内可以使用。
由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符和 static 修饰符。
查看全部 -
静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问
2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员
3、 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();
查看全部 -
成员内部类的使用方法:
1、 Inner 类定义在 Outer 类的内部,相当于 Outer 类的一个成员变量的位置,Inner 类可以使用任意访问控制符,如 public 、 protected 、 private 等
2、 Inner 类中定义的 test() 方法可以直接访问 Outer 类中的数据,而不受访问控制符的影响,如直接访问 Outer 类中的私有属性a
3、 定义了成员内部类后,必须使用外部类对象来创建内部类对象,而不能直接去 new 一个内部类对象,即:内部类 对象名 = 外部类对象.new 内部类( );
如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用 this 关键字。如
查看全部 -
内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。
:内部类的主要作用如下:
1. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类
2. 内部类的方法可以直接访问外部类的所有数据,包括私有的数据
3. 内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便
内部类可分为以下几种:
成员内部类
静态内部类
方法内部类
匿名内部类
查看全部 -
包的作用
管理java文件
解决同名文件冲突
系统中的包
java.(功能).(类 )
查看全部 -
面对对象的特性 封装:只能通过规定的方法访问数据,隐藏类的实例细节 实现步骤:修改属性的可见性 创建getter/setter方法,访问对象的属性,get方法和 set方法分别得到对象的属性值和设定对象的属性值。 在方法中加入属性控制语句,设置属性值的合理性 继承: 多态:
查看全部 -
1、向上类型转换(也叫隐式的或者自动类型转换), 是小类型到大类型的转换
2、向下类型转换(也叫强制类型转换),是大类型到小类型
instanceof运算符,求解决引用对象的类型,避免类型转换的安全性问题
通过 instanceof 关键字 以if为辅助,避免类型转换时出现的错误。
查看全部 -
equals()方法:比较对象的引用是否指向同一块内存地址
查看全部 -
Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。静态成员可以使用类名直接访问,也可以使用对象名进行访问。当然,鉴于他作用的特殊性更推荐用类名访问~~
查看全部 -
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。
查看全部 -
final关键字: 表示“最终的”,即不可修改。 final可以修饰类、方法、属性和变量 1、修饰类:不允许被继承 2、修饰方法:不允许被重写 3、修饰属性:则该属性不会进行隐式初始化(不会自动初始化),需要手动初始化或者在构造方法中初始化 (但二者只能选一,即只能初始化一次后便不能更改)
查看全部 -
成员变量定义在类中,而局部变量定义在方法中。
成员变量可以被本类(或者其他类的方法)的所有方法使用,而局部变量只能在当前的方法内使用。
也就是说,成员变量的作用域是整个类,而局部变量的作用域是当前方法。
在创建一个成员变量的时候会默认一个值,0.
Java会给成员变量一个初始值,而不会给局部变量赋予初始值。
在同一个方法中不允许有两个或以上同名变量,在不同方法中可以。
查看全部 -
float型变量赋值时需加f,否则默认浮点数是double类型。
查看全部 -
静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。
查看全部
举报