网站建设资讯

NEWS

网站建设资讯

java继承的代码例子 java类的继承代码

Java关于继承的问题,代码如下。

变量相同字父类不会被覆盖,而方法相同子类会覆盖父类方法,java在调用方法时会调用实际new时对象的方法,new Student 那么如果Student中有fun则调用,没有才查找父类中有没有fun方法,而属性会直接根据引用调用,引用是Person,就调用Person的i,写程序时是根据引用来写的,所以不可能你引用Person,会写出子类的属性,比如Student有个自己的属性j,你通过to肯定找不到j,如果引用是Student则调用Student的i,

嘉陵ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

求java中几个继承与多态实例,并要有相应的题目!给我参考和练习下,本人新手,不宜难的

JAVA中一个抽象类抽象方法继承与对象多态性的例子

面向对象的三大特点:封装,继承,多态。

在JAVA中我们总是尽可能地让一个类继承一个抽象类,这样大大的节省代码方便开发。

一个继承与对象多态性的例子:声明一个Person 类。Student 类,Worker类分别继承Person。

人有姓别,年龄,学生有特有的成绩属性,工人有特有的工资。

所有属性都用private封装

abstract class Person{

private String name;

private int age;

public Person(String name,int age){

this.setName(name);

this.setAge(age);

}

public void setName(String name){

this.name=name;

}

public void setAge(int age){

this.age=age;

}

public String getName(){

return this.name;

}

public int getAge(){

return this.age;

}

public void say(){

System.out.println(this.getContent());

}

public abstract String getContent();

}

class Worker extends Person{

private float salary;

public Worker(String name,int age,float salary){

super(name,age);

this.setSalary(salary);

}

public void setSalary(float salary){

this.salary=salary;

}

public float getSalary(){

return this.salary;

}

public String getContent(){

return "工人信息------姓名:"+super.getName()+",年龄:"+super.getAge()+",工资:"+this.getSalary();

}

}

class Student extends Person{

private float score;

public Student(String name,int age,float score){

super(name,age);

this.setScore(score);

}

public void setScore(float score){

this.score=score;

}

public float getScore(){

return this.score;

}

public String getContent(){

return "学生信息------姓名:"+super.getName()+", 年龄:"+super.getAge()+",成绩:"+this.getScore();

}

}

public class OODemo11{

public static void main(String []args){

Person p=null;

p=new Student("张三",23,90);

p.say();

p=new Worker("李师傅",26,3000);

p.say();

}

}

运行结果:

学生信息------姓名:张三, 年龄:23,成绩:90.0

工人信息------姓名:李师傅,年龄:26,工资:3000.0

java程序继承

package extend;

/**

* 圆类

* @author 枫雅

* 2019年3月21日

*/

public class Circle {

private double r;

public final static double PI = 3.14;

public Circle(double r) {

this.r = r;

}

public double Circumference(double r) {

return 2*PI*r;

}

public double Area(double r) {

return PI*r*r;

}

}

package extend;

/**

* 圆柱类,继承自圆类

* @author 枫雅

* 2019年3月21日

*/

public class Cylinder extends Circle{

private double h;

public Cylinder(double r, double h) {

super(r);

this.h = h;

}

public double CeArea(double r, double h) {

return super.Circumference(r)*h;

}

public double Volume(double r, double h) {

return super.Area(r)*h;

}

}

package extend;

/**

* 圆锥类,继承自圆柱类

* @author 枫雅

* 2019年3月21日

*/

public class Cone extends Cylinder{

public Cone(double r, double h) {

super(r, h);

}

public double CeArea(double r, double h) {

return super.CeArea(r, h)/2;

}

public double Volume(double r, double h) {

return super.Volume(r, h)/3;

}

}

package extend;

/**

* 测试类

* @author 枫雅

* 2019年3月21日

*/

public class Test {

public static void main(String[] args) {

double r = 3;

double h = 2;

Circle circle = new Circle(r);

System.out.println("半径为:" + r + " 圆的周长为:" + circle.Circumference(r));

System.out.println("半径为:" + r + " 圆的面积为:" + circle.Area(r));

Cylinder cylinder = new Cylinder(3, 2);

System.out.println("底部半径为:" + r + ",高为:" + h + " 圆柱的侧面积为:" + cylinder.CeArea(r, h));

System.out.println("底部半径为:" + r + ",高为:" + h + " 圆柱的体积为:" + cylinder.Volume(r, h));

Cone cone = new Cone(3, 2);

System.out.println("底部半径为:" + r + ",高为:" + h + " 圆锥的侧面积为:" + cone.CeArea(r, h));

System.out.println("底部半径为:" + r + ",高为:" + h + " 圆锥的体积为:" + cone.Volume(r, h));

}

}

JAVA 继承的代码 求帮助 在线等

简单写了下,希望对你有帮助

建议你找一下Java转型方面的资料

class Vehicle{

protected void vehicleRun(){

System.out.println("vehicle!!!");

}

}

class Truck extends Vehicle{

//子类覆写父类“vehicleRun方法”

protected void vehicleRun(){

System.out.println("It's Truck!!!");

}

protected void truckRun(){

System.out.println("truck!!!");

}

}

class Test{

public static void main(String [] args){

Vehicle v = new Vehicle();

v.vehicleRun(); //父类方法

//向上转型

Vehicle v1 = new Truck();

v1.vehicleRun(); //子类覆写后方法

//向下转型

Truck t = (Truck)v1;

t.vehicleRun();

t.truckRun();

}

}

Java编程:举例说明:继承,并输出结果。

public class Test {

public static void main(String[] args){

Test2 t2 = new Test2();

t2.t1();

System.out.println("继承的变量:"+t2.i);

}

}

class Test1{

int i=100;

public void t1(){

System.out.println("这是父类的方法");

}

}

class Test2 extends Test1{

}

简述JAVA中继承实现代码复用

看看下面这个例子,就会明白了:JAVA中继承可以实现代码复用,

由于在父类中已经定义的方法,被子类继承以后,就可以使用,实现了代码的复用

class Father{

private int moneyDollar=300;

int moneyHK=200;

int add(int x,int y){

return x+y;

}

}

class Son extends Father{

int moneyRMB=800;

public void changMoneyHK(int x){

moneyHK=x;

}

public void changMoneyRMB(int x){

moneyRMB=x;

}

int subs(int x,int y){

return x-y;

}

}

class GrandSon extends Son{

int multi(int x,int y){

return x*y;

}

}

public class Example5_1{

public static void main(String args[]){

int a=5,b=3;

Son son=new Son();

GrandSon sunzi=new GrandSon();

son.changMoneyHK(666);

son.changMoneyRMB(5000);

System.out.println("儿子的港币是继承的属性,当前的值是:"+son.moneyHK);

System.out.println("儿子的人民币是新增的属性,当前的值是:"+son.moneyRMB);

System.out.printf("减法是儿子新增的功能,%d-%d等于%d\n",a,b,son.subs(a,b));

System.out.printf("加法是儿子继承的功能,%d+%d等于%d\n",a,b,son.add(a,b));

System.out.println("孙子的港币和人民币都是继承的属性,,当前的值是:");

System.out.println("港币:"+sunzi.moneyHK+" 人民币:"+sunzi.moneyRMB);

System.out.printf("乘法是孙子新增的功能,%d*%d等于%d\n",a,b,sunzi.multi(a,b));

System.out.printf("加法是孙子继承的功能,%d+%d等于%d\n",a,b,sunzi.add(a,b));

System.out.printf("减法是孙子继承的功能,%d-%d等于%d\n",a,b,sunzi.subs(a,b));

}

}


名称栏目:java继承的代码例子 java类的继承代码
当前链接:http://cdweb.net/article/docdgie.html