缺省的构造方法例 class BankAccount( String ownerName 输出结果为 Int accountNumber ownerName=null float balance; accountNumber=0 balance=0.0 public class BankTester( public static void main我们可以在调用缺省的构造函数之后直接 Bank Account m对其状态进行初始化, System. out. print/ Bank Account my Account System. out. print! my Account=new BankAccountO my Account. accountNy my Account owner Name="Wangli System. out. print! my Account. accountNumber=1000234 my Account balance=2000.00f
缺省的构造方法例 class BankAccount{ String ownerName; int accountNumber; float balance; } public class BankTester{ public static void main(String args[]){ BankAccount myAccount = new BankAccount(); System.out.println("ownerName=" + myAccount.ownerName); System.out.println("accountNumber=" + myAccount.accountNumber); System.out.println("balance=" + myAccount.balance); } } 输出结果为: ownerName=null accountNumber=0 balance=0.0 我们可以在调用缺省的构造函数之后直接 对其状态进行初始化, BankAccount myAccount; myAccount = new BankAccount(); myAccount.ownerName = “Wangli" ; myAccount.accountNumber = 1000234; myAccount.balance = 2000.00f;
构造方法重载 在 遇到许多不同 public class Student String name 不同的参数 Int age public Student( String S, int n)f 方法,亦即对 name = S 个构造方法的 public Student(Strings) this(s, 20) 本类中的其他 public Studenti this("Unknown")
构造方法重载 ▪ 在进行对象实例化时可能会遇到许多不同 情况,于是要求针对所给定的不同的参数 调用各个不同的构造方法 ▪ 在一个类中同时定义若干个构造方法,亦即对 构造方法进行重载来实现 ▪ 在其中一个构造方法中引用另一个构造方法的 情况。可以使用关键字this来指代本类中的其他 构造方法 public class Student{ String name; int age; public Student(String s, int n){ name = s; age = n; } public Student(String s){ this(s, 20); } public Student(){ this("Unknown"); } }
finalize方法 finalize方法属于 Object类,它可被所有类使 用。如果对象实例不被任何变量引用时, Java会自动进行“垃圾回收”,收回该实例 所占用的内存空间 在对对象实例进行垃圾收集之前,Java自动调 用对象的 finalize方法,它相当于C++中的析构 方法,用来释放对象所占用的系统资源 finalize方法的说明方式如下 protected void finalize o throws Throwable
finalize方法 ▪ finalize方法属于Object类,它可被所有类使 用。如果对象实例不被任何变量引用时, Java会自动进行“垃圾回收”,收回该实例 所占用的内存空间 ▪ 在对对象实例进行垃圾收集之前,Java自动调 用对象的finalize方法,它相当于C++ 中的析构 方法,用来释放对象所占用的系统资源 ▪ finalize方法的说明方式如下: protected void finalize () throws Throwable
this引用 类的成员方法中访问类的成员变量,可以 使用关键字this指明要操作的对象 在类方法中,Java自动用this关键字把所有变量 和方法引用结合在一起。t的使用是不必要的, 程序中可以不写该关键字 有些情况下关键th是 命/ public class Date{ private int day, month, year public void print Date( System. out. println("The current date is(dd/mm /yy) this day +/+this month +" /+this year)
this引用 ▪ 类的成员方法中访问类的成员变量,可以 使用关键字this指明要操作的对象 ▪ 在类方法中,Java自动用this关键字把所有变量 和方法引用结合在一起。this的使用是不必要的, 程序中可以不写该关键字 ▪ 有些情况下关键字this是必需的 ▪ 例如,在完全独立的类中调用一个方法,同时 把对象实例作为一个自变量来传送。此时,要 用this指明对哪个对象实例进行操作 ▪ Birthday bDay = new Birthday (this); public class Date { private int day, month, year; public void printDate() { System.out.println("The current date is (dd / mm / yy): " + this.day + " / " + this.month + " / " + this.year); } }
子类 Java中的类层次结构为树状结构,这和我们 在自然界中描述一个事物是类似的。例如 般 动物 爬行动 物是 动物的 种 哺乳动物 爬行动物 鲸 狗 蜥蜴 蛇 壁虎 蜥蜴 具体 巨蜥 壁虎
子类 ▪ Java中的类层次结构为树状结构,这和我们 在自然界中描述一个事物是类似的。例如 我们可以将动物划分为哺乳类动物及爬行 类动物,然后又对这两类动物继续细分