面向对象的一些例子
来源:互联网 发布:开通淘宝店铺流程 编辑:程序博客网 时间:2024/05/22 17:03
修饰属性:修饰一个变量,这个变量就变成了常量。
修饰方法:方法不能被子类重写。
修饰类:这个类不能被继承。
abstract:修饰类,把类变成抽象类
2.接口和抽象类的联系和区别:
接口和抽象类的联系:
接口和抽象类都不能被实例化,它们都位于继承树的顶端,用于被其他类实现和继承。
2接口和抽象类都可以包含抽象方法,实现接口或继承抽象类的普通子类都必须实现这些抽象方法。
接口和抽象类的区别:
1接口里只能包含抽象方法,静态方法和默认方法,不能为普通方法提供方法实现,抽象类则完全可以包含普通方法。
2接口里只能定义静态常量,不能定义普通成员变量,抽象类里则既可以定义普通成员变量,也可以定义静态常量。
3接口不能包含构造器,抽象类可以包含构造器,抽象类里的构造器并不是用于创建对象,而是让其子类调用这些构造器来完成属于抽象类的初始化操作。
接口里不能包含初始化块,但抽象类里完全可以包含初始化块。
一个类最多只能有一个直接父类,包括抽象类,但一个类可以直接实现多个接口,通过实现多个接口可以弥补Java单继承不足。
3.内部类的类型:
成员内部类:不含关键字static就是成员内部类,可以自由的引用外部类的属性和方法
静态内部类:指被声明为static的内部类,不能访问外部类的普通成员变量,只能访问外部类中的静态成员变量和静态方法。
方法内部类:指定义在一个代码块内的类,作用范围为其所在的代码块。局部类类似于局部变量一样,不能被public、protected、private以及static修饰,只能访问方法中定义为final类型的局部变量。
匿名内部类:是一种没有类名的内部类,不使用关键字class、extends、implements,它必须继承其他类或实现其它接口。
4.java中我们可以调用System.gc();方法来让JVM(java虚拟机执行垃圾回收),但是什么时候执行还是靠JAVA的JVM来自动执行的。
写一个关于青蛙和兔子的程序
其中用到了抽象abstract 接口implements 多态等知识
//动物类
package com.mxdx;
public class Animal {
String name;
String color;
String type;
public void eat(){
}
public void song(){
}
}
//动物接口
package com.mxdx;
public interface Animall {
public void swimming();
}//青蛙类
package com.mxdx;
public class Frog extends Animal implements Animall{
public void swimming() {
System.out.println("虽然不是鱼,但青蛙也是泳坛高手");
}
public void song(){
System.out.println("那只"+this.color+"名叫"+this.name+"的青蛙正在呱呱叫");
}
public void eat(){
System.out.println("青蛙"+this.type+"爱吃昆虫");
}
}
//兔子类
package com.mxdx;
public class Rabbit extends Animal{
public void song(){
System.out.println("那只"+this.color+"名叫"+this.name+"的兔子正在叽叽叫");
}
public void eat(){
System.out.println("兔子是"+this.type+"爱吃胡萝卜");
}
}
//测试类
package com.mxdx;
public class Text {
public static void main(String[] args) {
Animal f=new Frog();
Animal r=new Rabbit();
f.name="大牛";
f.color="绿色";
f.type="非哺乳类";
r.name="美人";
r.color="黑色";
r.type="哺乳类";
f.song();
f.eat();
((Frog) f).swimming();
r.song();
r.eat();
}
}
- 面向对象的一些例子
- 面向对象的例子
- 面向对象的一些法则
- 面向对象的一些概念
- 面向对象的一些测试
- 面向对象的一些概念
- 面向对象的一些理解
- 面向对象的一些术语
- 面向对象的一些理论
- 一些面向对象的法则
- 面向对象的一些知识
- 面向对象的一些知识
- 面向对象的一些杂记
- 面向对象的一些心得
- 面向对象的一些研究
- javascript(js) 面向对象的例子
- Javascript面向对象相关的一个例子
- JavaScript:一个面向对象的例子
- 嵌入式Linux完全开发手册-------------Linux内核调试技术
- 进程编程基本函数
- react-native报错-Unable to resolve module ‘react’
- JVM虚拟机选项:Xms Xmx PermSize MaxPermSize区别
- 深度学习中Batch_size相关问题汇总
- 面向对象的一些例子
- VM虚拟机使用主机shadowsocks代理上网
- Beautiful Soup -- 文档笔记(一)
- 常用ODPS命令
- HDU-2842(递推+矩阵快速幂)
- Linux 管理日志
- Android 路由框架ARouter最佳实践
- Oracle
- UVA