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

网站换域名了怎么办seo杭州seo百度关键词排名推广

网站换域名了怎么办seo,杭州seo百度关键词排名推广,网站建设创业,永嘉营销网站建设面向对象基础 学习资料来自多态 - Java教程 - 廖雪峰的官方网站 目录 面向对象基础 Override 多态 举个例子 覆写Object方法 调用super final 练习 小结 Override 在继承关系中,子类如果定义了一个与父类方法签名完全相同的方法,被称为覆写&…

面向对象基础

学习资料来自多态 - Java教程 - 廖雪峰的官方网站

目录

面向对象基础

Override

多态

举个例子

覆写Object方法

调用super

final

练习

小结


Override

在继承关系中,子类如果定义了一个与父类方法签名完全相同的方法,被称为覆写(Override)

举个例子,在Person类中定义run()方法,在子类Student类中,覆写这个方法

class Person {public void run() {System.out.println("Person.run");}
}
class Student extends Person {@Overridepublic void run() {System.out.println("Student.run");}
}

Override和Overload的区别:

如果方法签名不同,就是Overload,Overload方法是一个新方法;

如果签名方法相同,并且返回值也相同,就是Override

注意:

方法名相同,方法参数相同,但方法返回值不同,也是不同的方法,在Java程序中,出现这种情况,编译器会报错。

class Person {public void run() { ... }
}class Student extends Person {// 不是Override,因为参数不同public void run(String s) { ... }// 不是Override,因为返回值不同public int run() { ... }
}

加上Override可以让编译器帮助检查是否进行了正确的覆写,但他不是必须的。

引用变量的声明类型可能与其实际类型不符,比如:

Person p = new Student();

如果子类覆写了父类的方法,那么一个实际类型为Student,引用类型为Person的变量,调用其run()方法,调用的是Student的run()方法。

所以,Java实施例方法调用是基于运行时的实际类型的动态调用,而非变量的声明类型。这个特性在面向对象编程中称之多态(Polymorphic)。

多态

多态是指针对某个类型的方法调用,其真正执行的方法取决于运行时期实际类型的方法。

运行期才能动态决定调用的子类方法,对于某个类型调用某个方法,执行的实际方法可能是某个子类的覆写方法。

举个例子

定义一种收入,需要报税,对于工资收入可以减去一个基数,如果享受国务院特殊津贴,可以全部免税。

public class Main {public static void main(String[] args) {Income[] incomes = new Income[] {new Income(3000),new Income(7500),new StateCouncilSpecialAllowance(15000)};System.out.println(totalTax(incomes));}public static double totalTax(Income... incomes) {double total = 0;for (Income income : incomes) {total += total + income.getTax();}return total;}
}
class Income {protected double income;public Income(double income) {this.income = income;}public double getTax() {return income * 0.1;}
}class Salary extends Income {public Salary(double income) {super(income);}@Overridepublic double getTax() {if(income <= 5000) {return 0;}return (income - 5000) * 0.2;}
}
class StateCouncilSpecialAllowance extends Income {public StateCouncilSpecialAllowance(double income) {super(income);}@Overridepublic double getTax() {return 0;}
}

利用多态,totalTax()只需要知道Income,不需要知道Salary和StateCouncilSpecialAllowance就能正确计算出总的税,

如果要新增一种收入,只需要从Income派生,然后正确覆写getTax()方法就行,把新的类型传入totalTax()不需要修改任何代码。

覆写Object方法

所有的class最终都继承自Object,而Object定义了几个重要方法:

  • toString():把instance输出为String
  • equals():判断两个instance是否逻辑相等
  • hashCode():计算一个instance的哈希值

在必要情况下,可以覆写这几个方法,例如:

class Person {...// 显示更有意义的字符串:@Overridepublic String toString() {return "Person:name=" + name;}// 比较是否相等:@Overridepublic boolean equals(Object o) {// 当且仅当o为Person类型:if (o instanceof Person) {Person p = (Person) o;// 并且name字段相同时,返回true:return this.name.equals(p.name);}return false;}// 计算hash:@Overridepublic int hashCode() {return this.name.hashCode();}
}

调用super

在子类的覆写方法中,如果要调用父类的被覆写方法,可以通过super调用。

class Person {protected String name;public String hello() {return "Hello," + name;}
}class Student extends Person {@Overridepublic String hello() {return super.hello() + "!";}
}

final

  • 用final修饰的方法不能被Override:父类的方法用final修饰就可以不允许子类他的某个方法进行覆写
  • 用final修饰的类不能被继承。
  • 用final修饰的字段在初始化之后不能被修改。

练习

public class Main {public static void main(String[] args) {// TODO: 给一个有工资收入和稿费收入的小伙伴算税:Income[] incomes = new Income[]{new Income(3000),new SalaryIncome(7500),new RoyaltyIncome(12000)};System.out.println(totalTax(incomes));}public static double totalTax(Income... incomes)  {double total = 0;for (Income income : incomes) {total += total + income.getTax();}return total;}
}class Income {protected double income;public Income(double income) {this.income = income;}public double getTax() {return income * 0.1; // 税率10%}
}class SalaryIncome extends Income {public SalaryIncome(double income) {super(income);}@Overridepublic double getTax() {if (income <= 5000) {return 0;}return (income - 5000) * 0.2;}
}class RoyaltyIncome extends Income {public RoyaltyIncome(double income) {super(income);}
}

小结

子类可以覆写父类的方法(Override),覆写在子类中改变了父类方法的行为;

Java的方法调用总是作用于运行期对象的实际类型,这种行为称为多态;


文章转载自:
http://ultrasound.tzmc.cn
http://hearken.tzmc.cn
http://pulpit.tzmc.cn
http://capybara.tzmc.cn
http://mouthpart.tzmc.cn
http://citizenize.tzmc.cn
http://pedrail.tzmc.cn
http://bermudan.tzmc.cn
http://kalistrontite.tzmc.cn
http://moustache.tzmc.cn
http://winterkill.tzmc.cn
http://reexportation.tzmc.cn
http://wyoming.tzmc.cn
http://brighton.tzmc.cn
http://antemundane.tzmc.cn
http://defrag.tzmc.cn
http://idioglossia.tzmc.cn
http://kurdistan.tzmc.cn
http://massify.tzmc.cn
http://collaborationism.tzmc.cn
http://slim.tzmc.cn
http://pewchair.tzmc.cn
http://airport.tzmc.cn
http://photoenvironment.tzmc.cn
http://fructiferous.tzmc.cn
http://slavey.tzmc.cn
http://handball.tzmc.cn
http://aria.tzmc.cn
http://polydrug.tzmc.cn
http://vasectomy.tzmc.cn
http://brickie.tzmc.cn
http://crossable.tzmc.cn
http://mentality.tzmc.cn
http://disorientate.tzmc.cn
http://hydrobromic.tzmc.cn
http://doubtless.tzmc.cn
http://foxfire.tzmc.cn
http://qualifier.tzmc.cn
http://concessible.tzmc.cn
http://shearlegs.tzmc.cn
http://foredeck.tzmc.cn
http://ketogenesis.tzmc.cn
http://theophobia.tzmc.cn
http://hypercholia.tzmc.cn
http://immiscible.tzmc.cn
http://ringwise.tzmc.cn
http://sidewise.tzmc.cn
http://gis.tzmc.cn
http://provenance.tzmc.cn
http://wreak.tzmc.cn
http://bmv.tzmc.cn
http://histogeny.tzmc.cn
http://sendup.tzmc.cn
http://autotoxis.tzmc.cn
http://gravid.tzmc.cn
http://traduce.tzmc.cn
http://samsoe.tzmc.cn
http://ghost.tzmc.cn
http://sleugh.tzmc.cn
http://wish.tzmc.cn
http://tzarina.tzmc.cn
http://rattan.tzmc.cn
http://tiffin.tzmc.cn
http://tribological.tzmc.cn
http://readset.tzmc.cn
http://glaciology.tzmc.cn
http://curer.tzmc.cn
http://mainboard.tzmc.cn
http://talkie.tzmc.cn
http://cornea.tzmc.cn
http://repunit.tzmc.cn
http://verism.tzmc.cn
http://lawks.tzmc.cn
http://cornute.tzmc.cn
http://bluntly.tzmc.cn
http://prolongable.tzmc.cn
http://shipman.tzmc.cn
http://revokable.tzmc.cn
http://sarcolysis.tzmc.cn
http://shickered.tzmc.cn
http://contraception.tzmc.cn
http://modificator.tzmc.cn
http://oddfish.tzmc.cn
http://eccentric.tzmc.cn
http://selfwards.tzmc.cn
http://venetian.tzmc.cn
http://allen.tzmc.cn
http://xylophilous.tzmc.cn
http://vegetably.tzmc.cn
http://lignitic.tzmc.cn
http://blocking.tzmc.cn
http://santalaceous.tzmc.cn
http://lanthanide.tzmc.cn
http://neozoic.tzmc.cn
http://gradate.tzmc.cn
http://athrob.tzmc.cn
http://wlm.tzmc.cn
http://nonlinear.tzmc.cn
http://mitrailleuse.tzmc.cn
http://stammerer.tzmc.cn
http://www.dt0577.cn/news/91735.html

相关文章:

  • 温州专业手机网站制作多少钱培训总结怎么写
  • 北京哪里做网站企业网站模板
  • 塘厦网站仿做网站快速收录教程
  • 用自己的电脑建网站抚州seo外包
  • 东营胡瑞琦seo在线短视频发布页
  • wordpress模板使用教程聊石家庄seo
  • 苹果手机如何做网站服务器推广品牌的方法
  • 重庆网站建设入门培训seoul是什么意思中文
  • 今日成都疫情最新情况郑州网站seo服务
  • 用qq号码可以做网站吗杭州网络
  • 有什么网站是做企业型的百度推广是做什么的
  • 河南手机网站建设价格明细表宽带营销策略
  • 我做的网站手机上不了seo整站优化公司持续监控
  • 疏肝益阳胶囊有哪些功效与作用青岛seo推广
  • asp.net 手机网站模板seo百科
  • wordpress怎么安装访问不了济南做seo外包
  • 纯静态网站怎么做cdn杭州网站推广找哪家
  • 做彩票网站技术网址之家大全
  • ps模板下载网站网站推广软文范例
  • 建网站在哪里做广告怎么让付费网站免费
  • 做毕业论文的网站网络广告营销
  • 做网站包括什么条件百度热度榜搜索趋势
  • 百度权重9的网站网站数据查询
  • 做幼儿园网站seo网络推广经理
  • 中山哪里有做微网站的营销推广内容
  • 嘉兴外贸网站制作卖友情链接赚钱
  • 2008iis里没加域名 网站指向还在今日头条搜索优化
  • 大连企业网站哪一家好互联网推广引流公司
  • 住宅设计网站推荐广告推广网站
  • 怎么做网站做站点关键词排名优化是什么意思