当前位置: 首页 > news >正文

网站名百度搜不到wordpress安装权限设置

网站名百度搜不到,wordpress安装权限设置,个人如何接外贸订单,wordpress播放音乐目录 一.多态: 1.方法的多态: 2.对象的多态: 3.多态的注意事项与细节: 5.多态的应用: 二.Java的动态绑定机制: 三.多态应用: 1.多态数组: 2.多态参数: 三.Object类&#xf…

目录

一.多态:

1.方法的多态:

2.对象的多态:

3.多态的注意事项与细节:

5.多态的应用:

二.Java的动态绑定机制:

三.多态应用:

1.多态数组:

2.多态参数:

三.Object类:

1.equals方法:

2.hashcode方法:

3.toString方法:

4.finalize方法:


一.多态:

方法或对象具有多种形态,是面向对象的第三大特征,多态是建立在封装和继承基础上的。

1.方法的多态:

方法的重写和重载就体现多态。

2.对象的多态:

  1. 一个对象的编译类型和运行类型可以不一致
  2. 编译类型在定义对象时,就确定了,不能改变
  3. 运行类型是可以变化的
  4. 编译类型看定义 = 号的左边,运行类型看 = 号的右边。

例:Animal animal = new Dog()  【animal编译类型是Animal,运行类型是Dog】

3.多态的注意事项与细节:

(1)多态的前提是两个对象存在继承关系

(2)向上转型:父类的引用指向子类的对象,可以调用父类中的所有成员,但不能调用子类特有成员。

(3)方法与属性调用时按照从子类开始查找

例:Animal animal = new Dog()  【animal编译类型是Animal,运行类型是Dog】

class Dog extends Animal 【aniaml可以调用父类中所有成员(访问权限内),不能调用子类的特有成员。】

(4)向下转型:

  1. 语法:子类类型 引用名 = (子类类型)父类引用
  2. 只能强转父类的引用,不能强转父类的对象
  3. 要求父类的应用必须指向当前目标类型的对象
  4. 当向下转型后,就可以调用子类类型中所有的成员

例:Animal animal = new Dog() ; Dog dog= (Dog) animal ;【编译类型是Dog运行类型也是Dog,可以调用Dog中的所有方法】

(5)属性的值看编译类型,编译类型看定义 = 号的左边。

(6)instanceOf比较操作符,用于判断对象的运行类型是否为某类型或则某类型的子类型,返回值为true或false。

注:方法找运行类型,属性找编译类型,对象找地址。

5.多态的应用:

二.Java的动态绑定机制:

1.当调用对象方法时,该方法会和该对象的内存地址/运行类型绑定

2.当调用对象属性时,没有动态绑定机制,哪里声明,使用哪里(调用方法中出现的属性)

三.多态应用:

1.多态数组:

定义:数组的定义类型为父类类型,里面保存的实际元素为子类类型。

public class Ployarray {public static void main(String[] args) {Person [] persons = new Person[5];persons[0] = new Person("jack",20);persons[1] = new Student("jeek",20,100);persons[2] = new Student("simth",28,80);persons[3] = new Teacher("scout",30,12000);persons[4] = new Teacher("king",50,10000);for (int i = 0; i < persons.length; i++) {//动态绑定机制,方法看运行机制System.out.println(persons[i].Say());}}

2.多态参数:

定义:方法定义的形参类型为父类类型,实参类型为子类类型。

public class Teat {public static void main(String[] args) {Woker tom = new Woker("ton",2500);Manager milan = new Manager("milan",5000,20000);Teat t = new Teat();t.showEmpSAnnual(tom);t.showEmpSAnnual(milan);t.testwork(tom);t.testwork(milan);}public void showEmpSAnnual(Employee e) {//编译类型为Employee,运行类型为传入对象的类//Employee e = new Woker();System.out.println(e.getAnnual());}public void testwork(Employee e){if(e instanceof Woker){((Woker) e).work();}else if(e instanceof Manager){((Manager) e).manage();}}
}

三.Object类:

1.equals方法:

(1)equals与= = 的区别:

  •  = = 既可以判断基本类型,又可以判断引用类型
  • 如果 = =判断基本类型,判断的值是否相等。
  • 如果 = =判断引用类型,判断的是地址是否相等。

equals是Object类中的方法,只能判断引用类型,默认判断地址相等,子类往往重写该方法,用于判断内容是否相等。

(2)equals的重写:

public class EqualsExercise {public static void main(String[] args) {Person person1= new Person("jack",10,'男');Person person2= new Person("makw",10,'男');System.out.println(person1.equals(person2));}}
class Person {private String name;private int age;private char gender;public boolean equals(Object obj){if(this == obj){return true;}if(obj instanceof Person){Person p = (Person)obj;return this.name.equals(p.name) && this.age== p.age && this.gender == p.gender;}return false;}public Person(String name,int age,char gender){this.name = name;this.age = age;this.gender = gender;}

2.hashcode方法:

  1. hashcode方法提高具有哈希结构的容器的效率
  2. 两个引用如果指向同一个对象,则哈希值是一样的。
  3. 哈希值是主要根据地址号,不能将哈希值等价于地址。

3.toString方法:

默认返回:全类名+@+哈希值的十六进制,子类往往重写toString方法,用于返回对象的属性信息。

当输出一个对象时,toString重写方法会被默认的调用。

public class toStringExercise {public static void main(String[] args) {Monster monster = new Monster("小妖怪","巡山的",1000);System.out.println(monster.toString());System.out.println(monster);}
}
class Monster{private String name;private String job;private double sal;public Monster(String name, String job, double sal) {this.name = name;this.job = job;this.sal = sal;}
//重写toString方法@Overridepublic String toString() {return "Monster{" +"name='" + name + '\'' +", job='" + job + '\'' +", sal=" + sal +'}';}
}

4.finalize方法:

  • 当对象被回收时,系统自动调用该对象的finalize方法,子类可以重写该方法做一些释放资源的操作。
  • 当某个对象没有任何引用,就会使用垃圾回收机制来销毁该对象,在销毁该对象钱,会调用finalize方法。
public class Finaliaze_ {public static void main(String[] args) {Car bmw = new Car("宝马");bmw = null;System.gc();System.out.println("程序退出");}
}
class Car {private String name;public Car(String name) {this.name = name;}@Overrideprotected void finalize() throws Throwable {System.out.println("我们销毁汽车"+name);System.out.println("我们释放了某些资源");}
}

http://www.yayakq.cn/news/476567/

相关文章:

  • 建设网站所采用的技术高新区建网站外包
  • 1000个免费货源网站入口好评的广告牌制作公司
  • 西安住房和城乡建设局网站怎么免费制作app
  • wordpress把站php+mysql网站开发全程实例 下载
  • 阿里巴巴建设网站福田企业的网站建设公司好吗
  • 夹江企业网站建设报价动易网站只能进首页
  • 企业门户网站建设机构百度竞价渠道代理
  • 企业建站方案网站开发建设协议
  • 如何维护公司网站网络规划设计师是干啥的
  • 高校校园网网站内容如何建设网站开发使用什么工具
  • 网站怎样改域名做网站大公司
  • 网站怎么被搜到首页云主机由哪些部件组成
  • 苏州制作网站的公司简介网站上漂亮的甘特图是怎么做的
  • 保健品 东莞网站建设wordpress设置弹窗
  • 用自己的身份做网站备案青岛做网站eoe
  • 上海有哪些网站设计公司编程软件做网站的
  • 网站添加在线支付怎么查看网站ftp地址
  • 长沙网站搭建优化免费十大软件app
  • 查网站是否正规网站建设认准猪八戒网
  • 外贸网站建设优化营销企业官网模板下载
  • php网站建设思路方案企业所得税交多少
  • 打开网站做视频网站多大空间够
  • 郑州网站建设伟置社交网站开发成本
  • 简单详细搭建网站教程视频小程序开发制作需要多少钱
  • 做淘宝客网站用什么程序最好2023年网络推广方法
  • 东莞长安做网站ckplayer怎么上传做网站
  • 湖南平台网站建设公司呼和浩特公司网页设计
  • 深圳做网站 龙华信科在线音乐网站怎么做
  • 效果建网站的公公司网站毕业设计论文
  • 做购物网站学什么技术搜狗优化好的网站