Java基础知识 第三节 面向对象的复习

一、了解面向对象

  1. 一个程序包含多个对象,通过调用对象来实现应用程序的功能。

  2. 主要特点:封装性、继承性、多态性

  3. 创建对象

    Person p=new Person();		//类名 对象名称 = new 类名();
    
  4. 访问对象

    p.speak();		//对象名称.成员对象();  即Person方法下的成员对象代码块
    

    (注:当变量p运行完毕后,会因超出作用域而被销毁,此时p对象因不被引用,而变成垃圾。)
    (理解:第一次运行后,会因不再被引用,而一直占着空间,成为垃圾。)

二、方法

  1. 构造方法(三个条件)

    方法名与类名相同
    方法名前面没有返回值类型的声名
    方法中不能使用return语句返回一个值

    1class Person {			// 下面是类的构造方法
    	public Person() {				//方法名与类名相同
    		System.out.println("无参的构造方法被调用了...");
    	}
    }
    public class Exam01 {
    	public static void main(String[] args) {
    		Person p = new Person();  // 实例化 Person 对象时会自动调用Person()方法
    								//因此不需要再书写p.Person();代码
    	}
    }
    
  2. 构造方法重载:可以像普通方法一样,在一个类中定义多个构造方法,只需参数个数或类型不同即可

三、垃圾回收

  1. 一个对象执行过后,不再调用会成为垃圾暂时保留在内存种,堆积到一定程度,由Java虚拟机自动释放内存(“销毁”)。
  2. 立即垃圾回收指令:System.gc(); 使用该指令时,会自动调用finalize()方法,进行释放回收。

四、静态变量

  • static关键字(静态变量)
    使用static关键字修饰的成员变量,被称为静态变量,被所有实例共享,都可以用“类名.变量名”进行访问。

    ststic String 变量名;
    
  • 静态方法:
    使用static关键字定义的方法,被称为静态方法,所有实例都可以用“类名.方法名”进行访问。

    public static void 方法名(){
    	代码内容;
    }
    
  • 静态代码块:当类被加载时,会自动调用类中静态代码块,且只执行一次。

    static{
    	代码内容;
    }
    

4.内部类

  • 成员内部类:类中类。(调用方法:外部类名.内部类名 变量名=new 外部类名().new 内部类名();
  • 静态内部类:类中静态类(调用方法:外部类名.内部类名 变量名=new 外部类名.内部类名();
  • 方法内部类:方法中的类(只在当前方法中调用)

五、类的继承

  1. extends关键字:

    例如:public class Dog extends Animal{ }  //Dog为子类,Animal为父类
    

    解说:子类继承父类自动拥有父类成员,因此,实例对象可直接调用父类的方法。

  2. 重写父类方法:此时,实例对象直接调用父类的方法时,将会输出子类重写的内容。

  3. super关键字:调用父类的成员变量和成员方法.

六、接口

  1. 接口:interface关键字声明定义接口

    2interface Animal {		//interface关键字声明定义接口
    	int ID = 1;       // 定义全局常量	(int整数型变量)
    	void breathe();  // 定义抽象方法breathe()	格式形同于public void breathe(){}
    	void run();      // 定义抽象方法run()
    }
    class Dog implements Animal {	// Dog类实现了Animal接口
    	//实现breathe()方法
    	public void breathe() {
    		System.out.println("狗在呼吸");
    	}
    	//实现run()方法
    	public void run() {
    		System.out.println("狗在跑");
    	} 
    }
    public class Exam02 {	// 定义测试类
    	public static void main(String args[]) {
    		Dog dog = new Dog(); //创建Dog类的实例对象
    		dog.breathe();        //调用Dog类的breathe()方法
    		dog.run();             //调用Dog类的run()方法
    	}
    }
    
  2. 多态:父类类型引用不同不同子类对象,输出不同结果。

  3. 异常:(通常继承于 java.long.Throwable 类)
    Exception类称为异常类,代表着程序本身可以处理的错误。
    异常捕获:try…catch和finally语句(其中try…catch用来处理异常,finally来释放系统资源等
    throws关键字:用于抛出异常(解读:遇到程序有可能的错误,将错误抛出到对应的catch语句中处理。)
    (注:若发生异常而没有处理,则程序终止,反馈错误。)

其它

  • Java的文档注释:

    注释格式:	/**	注释内容	*/
    
    Java中通过Javadoc命令,可以将注释内容提取出来,生成HTML格式的帮助文档。
    
     命令:javadoc -d . -version -author 类名.java	(-d用于指定文档存放目录)
    
  • Object类:
    所有类的父类,有着toString(返回一些特有的信息)等方法。

End.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值