Java面向对象进阶
2012-12-03 22:52
260 查看
相关额外的代码待上传。。。
在这里实现接口的方法,表示like-a关系
这里是继承抽象类,表示is-a关系
Animal的种类是:Dog
Animal的种类是:Cow
汪汪
cow cry....
animal move here....
animal move special type addone!
跑、咬、叫。。。
animal go home!!
姓名:我叫无语男教师
姓名:琦琦女学生
克隆前(浅克隆)
员工1的信息:姓名: hemmingway,年龄:
25,地址:国家: China,省: Hunan,城市:
Hengyang
员工2的信息:姓名: washa,年龄:
25,地址:国家: China,省: Hunan,城市:
zhouzhou
i'am inner class b
这里实现接口的方法。。。
/** * 面向对象进阶 */ package com.org.lxh; import com.org.lxh.ext.Demo; import com.org.lxh.impl.AysTest; import com.org.lxh.impl.Person; import com.org.lxh.impl.Test; import com.org.lxh.inter.InterTest; import com.org.lxh.obj.Address; import com.org.lxh.obj.ClassA; import com.org.lxh.obj.Cow; import com.org.lxh.obj.Dog; import com.org.lxh.obj.Employee; import com.org.lxh.obj.OutputInnerClass; /** * @author hemmingway <hemmingway@163.com> * */ public class Chp7 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //1、Java没有像C++一样的引用传递,只有值传递 /* * * */ //2、接口和抽象类有什么区别? /* * 一个类可以是以实现多个接口。但是只能继承一个抽象类 * 定义接口参见 com.org.lxh.inter; * 实现接口 com.org.lxh.impl * */ Test tst = new Test(); //接口使用范例 tst.doTest(); Demo demo = new Demo(); //抽象类的范例 demo.doSomething(); //3、如何调用父类的构造方法? /* * super * * Dog类中使用super关键字 * */ Dog d = new Dog(); System.out.println("Animal的种类是:" + d.name); //Animal的种类是:Dog Cow c = new Cow(); System.out.println("Animal的种类是:" + c.name); //Animal的种类是:Cow //4、方法的重写 /* * */ d.cry(); c.cry(); //5、如何操作被隐藏的成员变量和被重写的成员方法? /* * 如果想在子类中操作父类中被隐藏的成员变量和被重写的成员方法,也可以使用super关键字。具体格式如下: * super.成员变量名; * super.成员方法名; * * 例如Dog类中的move()方法中使用super * */ d.move(); //6、final、finally、finalize有什么区别 /* * final修饰一个类时,表示最终的类,不能继承的;如果修饰一个变量表示不能修改了;修饰一个方法,表示不可以重写。 * * finally用于异常处理,即使前面的代码没有异常,该代码块中的代码也会执行。通常用于资源释放。 * * finalize是Object类中定义的一个方法,可以重写,用于资源回收。 * */ d.goHome(); //这个方法在Animal中北final修饰 //7、Java中如何模拟多重继承? /* * Java中不支持多重继承,需要使用接口实现 * 范例:定义三个借口IPeople、ITeacher和IStudent * Person类实现这三个接口 */ Person p = new Person(); p.setName("我叫无语"); p.setSex("男"); System.out.println(p.teach()); p.setName("琦琦"); p.setSex("女"); System.out.println(p.study()); //7、Java克隆对象? /* * 1.浅克隆 * 相关的类有Address以及Employee * */ System.out.println("克隆前(浅克隆)"); Address address = new Address("China", "Hunan", "Hengyang"); Employee emp1 = new Employee("hemmingway", 25, address); System.out.println("员工1的信息: " + emp1); Employee emp2 = emp1.clone(); emp2.setName("washa"); emp2.getAddress().setCity("zhouzhou"); System.out.println("员工2的信息: " + emp2); //8. 内部类是否可以被继承? /* * 查看类 OutputInnerClass 的示范 */ ClassA a = new ClassA(); OutputInnerClass oic = new OutputInnerClass(a); oic.test(); //9.如何调用内部类和外部类同名的成员? /* * * */ //10. 什么是匿名内部类? /* * 创建一个InterTest接口 * * AysTest * */ AysTest ts = new AysTest(); ts.showInfo(new InterTest(){ public void printInfo() { //匿名内部类的类体 System.out.println("这里实现接口的方法。。。"); } }); } }
在这里实现接口的方法,表示like-a关系
这里是继承抽象类,表示is-a关系
Animal的种类是:Dog
Animal的种类是:Cow
汪汪
cow cry....
animal move here....
animal move special type addone!
跑、咬、叫。。。
animal go home!!
姓名:我叫无语男教师
姓名:琦琦女学生
克隆前(浅克隆)
员工1的信息:姓名: hemmingway,年龄:
25,地址:国家: China,省: Hunan,城市:
Hengyang
员工2的信息:姓名: washa,年龄:
25,地址:国家: China,省: Hunan,城市:
zhouzhou
i'am inner class b
这里实现接口的方法。。。
相关文章推荐
- JAVA进阶 面向对象程序设计——第2周 对象交互【对象和对象之间的联系】
- Java面向对象进阶篇(抽象类和接口)
- JAVA进阶 面向对象程序设计——第7周 控制反转与MVC模式(数据,表现,控制,分离)
- 【编程语言】Java基础进阶——面向对象部分
- JAVA进阶 面向对象程序设计——第8周 异常处理与输入输出(IO)
- JAVA进阶 面向对象程序设计——第6周 抽象与接口(表达接口,数据与表现分离)
- JAVA进阶 面向对象程序设计——第1周 类与对象(自己定义类,然后用自己定义的类来创建对象)
- Java 面向对象基础 以及进阶知识 总结
- JAVA进阶 面向对象程序设计——第3周 对象容器(数据存放)
- Java学习笔记03——Java面向对象和语言进阶
- Java面向对象进阶篇(内部类)
- JAVA进阶 面向对象程序设计——第4章 继承与多态【不同访问属性使子类在使用这些成员时不同】
- JAVA进阶 面向对象程序设计——第5周 设计原则(耦合和聚合,代码结构设计,程序维护拓展发展)
- Java面向对象进阶篇(包装类,不可变类)
- 【17-06-19】Java进阶自测:面向对象基础知识掌握了吗?(附答案及个人解析)
- Java面向对象之多态
- Java初级入门之 Five 面向对象特征
- java面向对象中的方法重载与方法重写的区别
- 迭代器_HashMap分拣思路与面向对象组合解题JAVA_119-121
- Java面向对象基础