Java面向对象系列(9)- 方法重写】的更多相关文章

重写:子类对父类方法的重新编写 返回值不变,形参不变 不能抛出新的或者范围更广的异常 class Animal{ public void move(){ System.out.println("动物可以移动"); } } class Dog extends Animal{ public void move(){ System.out.println("狗可以跑和走"); } } public class TestDog{ public static void mai…
继承 继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模 extands的意思是"扩展".子类是父类的扩展 JAVA中类只有单继承,没有多继承 继承是类和类之间的一种关系.除此之外,类和类之间的关系还有依赖.组合.聚合等 继承关系的两个类.一个为子类(派生类),一个为父类(基类).子类继承父类,使用关键字extands来表示 子类和父类之间,从意义上来讲因该具有"is a"的关系 object类 super 方法重写 package oop.demo03;…
为什么需要重写? 父类的功能,子类不一定需要,或者不一定满足 场景一 重写都是方法的重写,和属性无关 父类的引用指向了子类 用B类新建了A类的对象,把A赋值给了B,这时候B是A,A又继承了B类,向上转型.所以调用B类方法的时候,也就是B=>test 定义的是static,new一个对象时,左边引用的类是哪个就用的哪个类下面的方法 package oop.demo05; //重写都是方法的重写,和属性无关 public class B { public static void test(){ Sy…
一.哪些方法不能被重写? 1.final 修饰的不能重写 2.static 修饰的不能重写 3.private 修饰的,因为私有的在子类中不可见 4.如果跨包的话,修饰符缺省的也不能被重写,因为缺省的跨包不可见 二.修饰符 1.修饰外部类 权限修饰符:public 和 缺省的 其他修饰符:final 2.方法 权限修饰符:四种 其他修饰符:final.static.native 3.成员变量 权限修饰符:四种 其他修饰符:final.static 4.代码块 修饰符:static 或 没有 三.…
方法的定义 修饰符 返回类型 break:跳出switch,结束循环和return的区别 方法名:注意规范,见名知意 参数列表:(参数类型,参数名) 异常抛出 package oop.demo01; import java.io.IOException; //Demo01类 public class Demo01 { //main方法 public static void main(String[] args) { } /* 修饰符 方法值类型 方法名(...){ //方法体 return 返回…
方法的调用 静态方法 非静态方法 形参和实参 值传递和引用传递 this关键字(继承篇讲解) 静态方法 非静态方法 形参和实参 package oop.demo01; public class Demo03 { public static void main(String[] args) { //因为add不是static,需要实例化类调用 //实参 int add = new Demo03().add(1,2); System.out.println(add); //实参 int ajj =…
如何java中默认的equals方法跟实际不符的话,需要重写equals方法.例如: public class TestEquals { public static void main(String[] args) { Cat c1 = new Cat (1,2,3); Cat c2 = new Cat (1,2,3); System.out.println(c1==c2); System.out.println(c1.equals(c2)); } } class Cat{ int color…
1.为什么要重写clone()方法? 答案:Java中的浅度复制是不会把要复制的那个对象的引用对象重新开辟一个新的引用空间,当我们需要深度复制的时候,这个时候我们就要重写clone()方法. 2.为什么要重载equal方法? 答案:因为Object的equal方法默认是两个对象的引用的比较,意思就是指向同一内存,地址则相等,否则不相等:如果你现在需要利用对象里面的值来判断是否相等,则重载equal方法.…
原创文章,转载请标注出处:<Java设计模式系列-工厂方法模式> 一.概述 工厂,就是生产产品的地方. 在Java设计模式中使用工厂的概念,那就是生成对象的地方了. 本来直接就能创建的对象为何要增加一个工厂类呢? 这就需要了解工厂方法要解决的是什么问题了,如果只有一个类,我们直接new一个对象完事,这是最简单的:但是如果有多个类呢,而且这些类还需要针对不同的情况来创建不同的对象,这时候就需要工厂了,我们可以在工厂中根据条件来创建具体的对象. 这样一来就将调用方和具体的目标类进行了解耦,调用方根…
01继承的概述 A:继承的概念 a:继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系 b:在Java中,类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有类被称作父类 B:继承关系的子类特点 a:子类会自动拥有父类所有非private修饰的属性和方法 02继承的定义格式和使用 03继承的好处 A:继承的好处: 1.继承的出现提高了代码的复用性,提高软件开发效率. 2.继承的出现让类与类之间产生了关系,提供了多态的前提. 04继承的注意事项…