java中的抽象类:
来源:互联网 发布:db2和mysql语法的区别 编辑:程序博客网 时间:2024/06/06 10:54
package cn.mdln.study2;
/** 继承是为了解决代码统一问题
* 多态性为了解决类型统一问题多态的前提(必须是有继承关系)
* 抽象类:
* @author Administrator
* 抽象类一定要被子类所继承,因为抽象类中有方法名,没有方法体
* 所以子类必须强制性对父类中的所有抽象方法进行复写
* 抽象类因为有抽象方法,所以不能直接实例化对象,必须依靠子类实例化,像上转型
*/
public class TestDemo1 {
public static void main(String[] args) {
A a=new B();//抽象类通过子类间接实例化对其实例化,
a.print();//但是先调用父类的构造方法,再调用子类的构造方法
a.fun();
B b=(B)a;
b.fun();
b.print();
}
}
abstract class A
{
private String msg="HELLO";
public A()
{
System.out.println("父类构造方法**********************");
}
public void print()
{
System.out.println("父类普通方法");
}
abstract public void fun();
}
class B extends A
{
public B()
{
System.out.println("子类构造方法----------------------");
}
public void print()
{
super.print();
System.out.println("父类普通方法子类普通方法");
}
public void fun()
{
System.out.println("抽象方法");
}
}
/** 继承是为了解决代码统一问题
* 多态性为了解决类型统一问题多态的前提(必须是有继承关系)
* 抽象类:
* @author Administrator
* 抽象类一定要被子类所继承,因为抽象类中有方法名,没有方法体
* 所以子类必须强制性对父类中的所有抽象方法进行复写
* 抽象类因为有抽象方法,所以不能直接实例化对象,必须依靠子类实例化,像上转型
*/
public class TestDemo1 {
public static void main(String[] args) {
A a=new B();//抽象类通过子类间接实例化对其实例化,
a.print();//但是先调用父类的构造方法,再调用子类的构造方法
a.fun();
B b=(B)a;
b.fun();
b.print();
}
}
abstract class A
{
private String msg="HELLO";
public A()
{
System.out.println("父类构造方法**********************");
}
public void print()
{
System.out.println("父类普通方法");
}
abstract public void fun();
}
class B extends A
{
public B()
{
System.out.println("子类构造方法----------------------");
}
public void print()
{
super.print();
System.out.println("父类普通方法子类普通方法");
}
public void fun()
{
System.out.println("抽象方法");
}
}
0 0
- java中的抽象类
- Java中的抽象类
- Java中的抽象类
- Java中的抽象类
- java中的抽象类
- java中的抽象类
- JAVA中的抽象类
- java中的抽象类
- java中的抽象类
- java中的抽象类
- java中的抽象类
- java中的抽象类
- Java中的抽象类
- java中的抽象类
- JAVA中的抽象类
- java中的抽象类
- Java 中的抽象类
- java 中的抽象类
- 字符串教程 正则表达式
- POJ2109Power of Cryptography
- Lua CJSON安装和使用
- 欢迎使用CSDN-markdown编辑器
- Google《Android性能优化》学习笔记(上)
- java中的抽象类:
- Java中对象存储位置 - 堆和栈
- web配置虚拟路径
- C/C++堆栈指引
- 推荐10 个短小却超实用的 JavaScript 代码段
- 阅读Android源码的一些姿势
- 【HDU】2087 - 剪花布条(KMP)
- android、ios、php之间AES加密解密
- UVALive 2191 Potentiometers(线段树RMQ)