抽象,接口和Object类】的更多相关文章

在面向对象的概念中, 所有的对象都是通过类来表述的, 但并不是所有的类都是用来描绘对象的, 如果一个类中么有包含足够的信息来描绘一类具体的对象, 这样的类就是抽象类. 抽象类往往用来表征对问题领域进行分析. 设计中得出抽象概念, 是对一系列看上去不同, 但是本质上相同的具体概念的抽象.抽象类对其共通行为提供规范, 但并不实现, 而将其具体实现放到子类中完成, 通过“abstract”关键字描述. 举个栗子: 定义一个平面图形类Shape, 任何平面图形都有周长和面积. public abstra…
/** * 接口应用 */ public class Main { public static void main(String[] args) { Person p = new Person("fish7"); p.setIsay(new BeforeGong()); p.say(); p.setIsay(new AfterGong()); p.say(); } } class Person{ //只有在运行期才和say行为关联起来,这就叫面向接口编程 private String…
/* 类的继承 类的继承可以简化类的定义 java只支持单继承,不允许多重继承 可以有多层继承,即一个类可以继承其一个类的子类,如类B继承了类A,类C又可以继承类B 那么类C也间接继承了类A 子类继承父类所有的成员变量和成员方法,但不继承父类的构造方法, 在子类的构造方法中可使用语句super(参数列表) 调用父类的构造方法 如果子类的构造方法中没有显式地调用父类构造方法,也没用使用this关键字调用重载的其它构造方法,则在产生子类的实例对象时 系统默认调用父类无参数的构造方法 子类对象的实例化…
1.抽象类(重点)1.1 抽象方法的概念 抽象方法就是指不能具体实现的方法,也就是该方法没有方法体,使用abstract关键字修饰如: public abstract void cry(); 1.2 抽象类的概念 抽象类就是不能具体实现的类,也就是不能实例化对象,使用abstract关键字修饰. 1.3 注意事项 a.抽象类中可以有成员变量.成员方法以及构造方法. b.抽象类中可以有抽象方法也可以没有. c.具有抽象方法的类必须是抽象类,因此很多资料上认为具有抽象方法并且使用abstract 关…
在Java中,所有的类都直接或间接继承了java.lang.Object类.Object类是比较特殊的类,它是所有类的父类,是Java类层中的最高层类.当创建一个类时,总是在继承,除非某个类已经指定要从其他类继承,否则它就是从Java.lang.Object类继承而来. Java中的每个类都源于java.lang.Object类,如:String.Integer等都是继承于Object类,除此之外自定义的类也都继承于Object类,由于所有类都是Object子类,所以在定义类时,省略了exten…
Java中的超类 Object 步骤 1 : Object类是所有类的父类 声明一个类的时候,默认是继承了Object public class Hero extends Object package charactor; import property.Item; public class Hero extends Object { String name; //姓名 float hp; //血量 float armor; //护甲 int moveSpeed; //移动速度 public v…
面向对象三大特性 面向对象三大特征:继承 :封装/隐藏 :多态(为了适应需求的多种变化,使代码变得更加通用!) 封装:主要实现了隐藏细节,对用户提供访问接口,无需关心方法的具体实现. 继承:很好的实现了代码的复用,提高了编程效率.  多态:程序的可扩展性及可维护性增强. 继承(extends) 类是对对象的抽象,继承是对某一批类的抽象,从而实现对现实世界更好的建模.(从OOA.OOD即面向对象设计的角度考虑) 继承可以提高代码的复用性!(从OOP的角度考虑) extends的意思是“扩展”.子类…
曾经参与开发过的的项目,一般都是采用MVC模式进行开发,大概框架图如下: web界面层调用BLL业务层,BLL通过抽象工厂DALFactory动态生成继承了IDAL的数据库操作层实例,以进行对数据库的各项操作. DALFactory这层主要是根据web配置,通过反射动态生成IDAL实例,方便BLL层调用. 以前的做法是,IDAL每增加一个接口(如IUser),DALFactory就得添加一个方法用于产生继承了该接口的实例类.粗略代码:   public class DataAccess { pr…
更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux.网络.多线程,偶尔讲点Docker.ELK,同时也分享技术干货和学习经验,致力于Java全栈开发!(关注公众号后回复"资料"即可领取 3T 免费技术学习资源以及我我原创的程序员校招指南.Java学习指南等资源) 本文对java的Class类和Object类的概念和原理做了详尽的介绍,并且…
类的继承 Java只支持单继承,不允许多重继承- 一个子类只能有一个父类- 一个父类可以派生出多个子类这里写图片描述子类继承了父类,就继承了父类的方法和属性.在子类中,可以使用父类中定义的方法和属性,也可以创建新的数据和方法.因而,子类通常比父类的功能更多.在Java 中,继承的关键字用的是“extends”,即子类不是父类的子集,而是对父类的“扩展”. 关于继承的规则:    子类不能继承父类中私有的(private)的成员变量和方法. 访问控制 可以对Java类中定义的属性和方法进行访问控制…