8,对象的创建与销毁
a, 构造方法——在构造对象的时候同时传入相关的属性
用于构造对象的方法(当创建对象时调用的方法)
规则:1)方法名与类名相同
2)无返回值
package my; public class Student { public String id ;//学号 public String name ;//姓名 public boolean sex ;//性别 public String cellphone ;//手机号 //构造方法 public Student(String id, String name,boolean sex) { this.id = id; this.name = name; this.sex = sex; } } //主程序 package my; public class HelloWorld { public static void main(String[] args) { //创建对象的时候同时传入参数做初始化 Student s = new Student("201802","落落",true); } }
b,对象的销毁
当对象不在使用时,由垃圾回收机制GC自动回收。(Garbage Collect)
9.继承
a,继承关系:用于描述两个事物之间的一种关系(属性多的继承了属性少的)
自然界的例子:
树
{
树叶
主干
根
光合作用()
}
苹果树继承了树的所有共性,并添加了自己的特性
public class B extends A
{}
表示B继承了A(A:父类 B:子类)
A中已出现的特性,B中不用在书写
b,重写
如果父类的方法不满足要求,则可以在子类里重写一遍
c,构造方法的·继承
如果父类有多个构造方法,可以在子类里显示指定用那个构造方法
super();
super(a,b);//显示指定父类的构造方法(传入适当的参数,编辑器自行判断调用)
d,单根继承
Java语言中,一个类只能extends一个父类
ex:public class A extends B,C //错误写法!!!
- 继承链 Object 类是默认的所有类的父类
- toString() 方法
-
//toString() package my; public class Student { public String id ;//学号 public String name ;//姓名 public boolean sex ;//性别 public String cellphone ;//手机号 @Override public String toString() { String s = "学号:" + id +"姓名:"+name; if (sex) { s = s +"(男)"; } else { s = s+"(女)"; } return s; } }
- 是一个显示效果,鼠标点到s上,就会出现自己想要呈现的保存模式
e,多态
是设计上的一个术语。在java中,多态指以下语法现象:
- 重载 Overload:方法允许重名
- 重写 Override:允许子类重写父类的方法
- 泛型(模板)
e-1
子类与父类的类型转化
- 子类转成父类顺理成章(隐式转换)
- ApplePie p1= new ApplePie();
- Pie p2 = p1;//类型转化:ApplePie -> Pie
- 父类转成子类型
- ApplePie p3 = (ApplePie)p2;//显示转换
- 当调用一个方法时,不是看引用的类型,而是看对象的实际类型。
file 指向的是一个MyVideoFile对象,因而调用的是子类的info()方法。
Object x = new MyVideoFile();
所有的对象都是Object。
10. 包
在Java里用于对Class进行分目录分层管理,实际上,包就是Windows目录结构。
a, 添加包
import + 类的全路径
改名:选中——Refactor——Rename——finish(包括属性,类名)
保存:ctrl + s
注释:ctrl + //
打开提示:Alt + /
格式化选中的代码:Ctrl+ Shift +F