热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

java有关类的程序_Java中有关类的一些概念

初学者Java中有关类的一些概念java有两种多态,方法重载与方法重写。方法重载:一个类中可以有多个方法具有相同的名字,但这些方法的参数必

初学者

0818b9ca8b590ca3270a3433284dd417.pngJava中有关类的一些概念

java有两种多态,方法重载与方法重写。

方法重载:一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,要么个数不同,要么类型不同

下面这个例子可以很容易看出。

class AS

{

double a(byte x, int y)

{

return x + y;

}

double a(int x, int y)

{

return x * y;

}

}

public class fourth

{

public static void main(String args[])

{

AS b = new AS();

double value1 = b.a((byte)2, 3);

double value2 = b.a(2, 3);

System.out.println(value1);

System.out.println(value2);

}

}

输出:

5.0

6.0

方法重写:子类可以重写父类方法,但重写不可以降低方法的访问权限

class AS

{

protected double a(int x, int y)

{

return x * y;

}

}

class ASS extends AS

{

public double a(byte x, int y) //重写方法不可降低方法的访问权限,若改为 double a(byte x, int y), 则不合法。

{

return x + y;

}

}

public class fourth

{

public static void main(String args[])

{

AS b = new AS();

ASS b1 = new ASS();

double value1 = b.a(2,3);

double value2 = b1.a((byte)2, 3);

System.out.println(value1);

System.out.println(value2);

}

}输出结果:

6.0

5.0

子类与父类的继承:二者在同一个包中,除了private,其他类型的变量和方法都可以继承

不在同一个包,public,protected类型的变量和方法可以继承

final关键字 : final类不能被继承,final方法不允许被子类重写

abstract类也可以没有abstract方法

如果一个类是抽象类的子类,它必须重写抽象类的抽象方法

abstract class AS

{

abstract int f(int a, int b);

}

class ASS extends AS

{

int f(int a, int b)

{

return a * b;

}

}

public class fourth

{

public static void main(String args[])

{

// AS b = new AS() 不合法,抽象类不能够创建对象

ASS b1 = new ASS();

double value2 = b1.f(2, 3);

System.out.println(value2);

}

}输出:

6.0



推荐阅读
author-avatar
手机用户2602925311
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有