JAVA新手攻略 对象使用(一)

1.面向对象编程绕不开类和类下面的成员方法。

如果类需要多个实例.引用同1个类的成员方法,new 7个实例化对象在去引用skill是不合理的。

这里我们可以用到循环下标结合类进行实例化,注释用了一把英文。

public class Heros 
{ 
	public static void main(String[] args) { 
	    Heros hero[] = new Heros[7]; //Defining hero[] arrays,class Heros->hero
	    for(int i = 0; i < 7;i++){ //reads the hero arrays subscript
	    hero[i] = new Heros();	//Substituting for instantiated objects
	    hero[i].skill();
        } 
    } 
	public void skill() { 
        System.out.println("put skill!"); 
    } 
}

2. 属于类的成员方法可以带返回数值和不带返回数值的。一般用void是不带返回数值的

public class Heros{
    
    private void rename(Heroname name){  //name的形参
        Heroname hn =new Heroname();
        //hn.name ="xxx" //随意修改
        System.out.println("hero name update is"+hn.name)
    } 

    public int getInitHp(){ //定义1个给予英雄初始血量的方法
        return 30; //初始为30
    }
    //可以把修改英雄名称的方法也写成没有返回数值的
    
    public static void(String[] args){
        Heros heros =new Heros();
        int hp =0; //可以直接写下面调用
        int hp =heros.getInitHp();
        heros.rename("陈小猫") //陈小猫这里就是形参
        System.out.println("heros have initHp is "+hp);
    }


}
class Heroname{
    public String name="";
}

3.传递多个参数

和其他语言一样,java也支持多个参数在函数()内传递。要求也是数量一致,函数内顺序一致,顺序对应的类型一致。

public class Heros 
{ 

    public void skills(String skill1,String skill2) { 
         dobule[] skillsList =new dobule[2];
         skillsList[0] =skill1;
         skillsList[1] =skill2;
         System.out.println("first skill is"+skillsList[0],"second skill is "+skillList[1])
    }     

	public static void main(String[] args) { 
        Heros heros =new Heros();
        String wd_skill ="太极剑"; //skillsList[1]
        String tm_skill ="金蛇刺" //skillsList[0]
        heros.skills(tm_skill,wd_skill) //这里决定了实参的入参的顺序 
        
    } 
	
}

4.getter和setter

getter与setter让程序执行getxxx与setxxx的方法。getter功能只有返回实例变量的值,类似python对应的魔法方法。setter就是要通过一个参数来设定实例变量的值,getxxx()内是没有形参,返回的类型需要和实际方法相匹配。以上二类方法都是需要返回的,所以不要使用void

public class wuxia 
{ 
	String adviser;\\武侠世界里的客卿,归属于门阀门派以及对外的镖局等等 
	String school; \\门派
	
	//类型一样 get,用的顺序是先 实例化类对象后set->get
	String getAbviser(){
		return adviser;
	}
	
	String setAbviser(String newAdviser){  //set客卿
		adviser =newAdviser;
	}
	
	String getSchool(){
		return school;
	}
	
	String setAbviser(String newSchool){  //set客卿
		school =newSchool;
	}
	
	public static void main(String[] args){
		wuxia wx =new wuxia();
		wx.setAbviser("鹿杖客");//类型需要一致
		wx.getSchool("元都邵敏郡主旗下");//类型需要一致
		//输入需要用get
		System.out.println("客卿是"+wx.getAbviser(),客卿所属于的门派是			

	+wx.getSchool())
		
	}
}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值