昨晚在处理父类与子类相互转换时,想把父类转换子类对象,发现编译不通过 ,类定义如下: public interface IPeople { int Age { get; set; } string Name { get; set; } } public class People : IPeople ...
使用abstract关键字修饰的类叫做抽象类。父类无法确定子类行为时可以定义为抽象类 抽象类特点: 抽象类不能被实例化,主要用于被继承;抽象类里可以包含两种抽象成员,分别是抽象方法声明和抽象属性,同时可以包含其他非抽象成员。也可以包含构造函数,虽然不能被实例化 如果继承抽象类,则需实现抽象类中的所有 ...
1、显示调用父类的构造函数 1 class Program 2 { 3 static void Main(string[] args) 4 { 5 Teacher t = new Teacher(); 6 7 Console.ReadKey(); 8 } 9 } 10 11 class Person ...
1、实例化对象,执行构造函数 Teacher t3 = new Teacher("张三", 100, 100, 100); 2、隐藏父类的成员 1 class Person 2 { 3 public void SayHello() 4 { 5 Console.WriteLine("我是人类"); 6 ...
重载和重写 重写: 子类重写父类的方法 方法名相同、方法参数相同 返回值类型相同,或者子类方法的返回值类型是父类方法返回值的子类 访问修饰符相同,或者子类方法访问修饰符范围大于父类 抛出的异常相同,或者子类方法抛出的异常小于父类 重载: 发生在同一个类中 方法名相同 方法参数不同(个数不同、类型不同 ...
分类:
其他好文 时间:
2020-06-26 14:38:09
阅读次数:
47
在实例化对象时会对对象所在的所有成员变量进行初始化 实例化化对象:类名() 对象名 = new 类名(); 这时会调用(顺序如下) 1.父类的非静态代码块 { ......//用花括号包围的内容是非静态代码块 } 2.父类的构造函数 Public 父类名(){ .......//这里是父类的构造函数 ...
分类:
编程语言 时间:
2020-06-26 14:19:44
阅读次数:
75
多态就是父类引用指向子类对象 例如Animal a = new Dog();//向上转型 多态必须使用向下转型的时候:当在其他类中调用子类对象中独有的方法的时候需要向下转型 Animal a = new Dog(); Dog d = (Dog) a;//向下转型 多态在实际中的应用实际上就是为了程序 ...
分类:
其他好文 时间:
2020-06-26 00:57:11
阅读次数:
104
有如下代码:public class Fu { public int num = 1; public void show(){ System.out.println(this.num); } } public class Zi extends Fu{ public int num = 2; } pu ...
分类:
编程语言 时间:
2020-06-25 23:23:54
阅读次数:
69
常用的一些实用类 1、Object 概述:java.lang.Object java 语言中的根类,所有类的父类 假如一个类没有特别指定的父类 默认继承Object 方法:toString(); equals(); 2、Date 概述:表示特定的瞬间,精确到毫秒 1秒=1000毫秒拥有多个构造函数 ...
分类:
其他好文 时间:
2020-06-25 21:29:49
阅读次数:
60
用最简单的一句话就是:父类型的引用指向子类型的对象。用一句比较通俗的话:同一操作作用于不同的对象,可以产生不同的效果。这就是多态。 这句话很好理解:Person person = new Student("张三");但是这个多态有什么作用呢?而我们又为什么要是有多态呢? 首先讲下封装和继承:封装是把 ...
分类:
其他好文 时间:
2020-06-25 19:25:07
阅读次数:
120