问题

今天学习类一些主要知识点
第一
new hero();
创建对象
然后引用代表对象
hero h =new hero();
即h指向 hero对象;可以多个引用但是对象只有一个
这段代码实际上garen并没有引用第一个对象而是新建了个对象并引用
public class Hero {
public String name;
protected float hp;
public static void main(String[] args) {
Hero garen = new Hero();
garen = new Hero();
}
}
第二是类的继承性
我们可以先声明两个公共类
public class Item {
String name;
int price;
}
public class Weapon{
String name;
int price;
int damage; //攻击力
}
然后使用extends继承 代码如下 Weapon 继承了Item所以可以访问Item里面的属性。
public class Weapon extends Item{
int damage; //攻击力

public static void main(String[] args) {
    Weapon infinityEdge = new Weapon();
    infinityEdge.damage = 65; //damage属性在类Weapon中新设计的
     
    infinityEdge.name = "无尽之刃";//name属性,是从Item中继承来的,就不需要重复设计了
    infinityEdge.price = 3600;    
}

}
第三方法重载
方法的重载指的是方法名一样,但是参数类型不一样
注意仅止于类型不一样 若类型一样则会报错,其次当我们要输入很多参数时可以使用public void attack(Hero …heros) 其中传入的参数会转化成数组然后再去操作数组即可。
第四构造方法
声明一个构造方法
public Hero{
public Hero(String heroname,float herohp){
name = heroname;
hp = herohp;
}
}
构造方法值得注意的是
方法名和类名一样(包括大小写)
没有返回类型 构造方法可以没有参数
实例化一个对象的时候,必然调用构造方法 构造方法仅在new的时候调用 hero a = new hero(传入参数);即将传入参数放入构造方法中
第五this 的使用
也可以通过this函数访问当前的属性值
this 可以在构造函数中调用其他的构造方法
但是在下面的一段代码中
this(name)这一栏报错。
在这里插入图片描述
值得注意的是多个构造函数中的参数不允许出现相同类型,而且根据传入的参数来选择使用的构造函数。this(name)调用其他构造函数都应该事先声明并static声明!调用时似乎被调用的构造函数中的this无法正确的指向该函数的属性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值