java的set和get方法,this的使用和private
package com.shujia.day06.study;
//1.使用面向对象的思想,编写自定义描述狗的信息。设定属性包括:品种variety,年龄,心 情,名字;方法包括:叫,跑。
//要求:
//1)设置属性的私有访问权限,通过公有的 get,set 方法实现对属性的访问
//2)限定心情只能有“心情好”和“心情不好”两种情况,如果无效输入进行提示, 默认设置“心情好”。
//3)设置构造函数实现对属性赋值
//4)叫和跑的方法,需要根据心情好坏,描述不同的行为方式。
//5)编写测试类,测试狗类的对象及相关方法(测试数据信息自定义) 运行效果图:
//你输入的心情无效
//品种:边牧 年龄:3 心情:心情好 名字:白球
//名字叫白球的心情好,开心的围着主人身边转
//名字叫白球的心情好,开心的汪汪叫
class dog{
//被private修饰的成员变量,需要通过编写getXXX(用来获取值)和setXXX(用来输入值)方法才能输出
private String variety;
private int age;
private String fell;
private String name;
//无参的构造方法
public dog(){
}
//有参的构造方法
public dog(String fell,String name){
//this代表的是该方法被调用的对象(谁调用该方法,就代表哪个对象)
this.fell=fell;//等号左边的fell指的是上面所定义的成员变量,右边的fell值指的是构造方法的形参,意思是将其传入的实参赋值给该成员变量
this.name=name;
//判断心情值是否为心情好和心情不好这两种,不是则将心情值修改为默认值
if("心情好".equals(fell) || "心情不好".equals(fell)){
this.fell=fell;
}else {
System.out.println("输入的心情有误!已修改为默认值,心情好");
this.fell="心情好";
}
call();//调用该方法
run();
}
public String getVariety() {
return variety;
}
public void setVariety(String variety) {
this.variety = variety;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getFell() {
return fell;
}
public void setFell(String fell) {
this.fell = fell;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
//快速生成get跟set方法的快捷键为Alt+Ins
//Ctrl+鼠标左键为选择多个成员方法
public void run(){
//run方法不同心情值代表不同的行为
if ("心情好".equals(fell)){
System.out.println("名字叫"+name+"的小狗"+fell+",开心的围着主人身边转");
}else if("心情不好".equals(fell)){
System.out.println("名字叫"+name+"的小狗"+fell+",伤心的一动不动");
}
}
public void call(){
//call方法不同心情值代表不同的行为
if ("心情好".equals(fell)){
System.out.println("名字叫"+name+"的小狗"+fell+",伤心的呜呜叫");
}else if("心情不好".equals(fell)){
System.out.println("名字叫"+name+"的小狗"+fell+",开心的汪汪叫");
}
}
//main方法实现其中的功能
public class Demo1 { public static void main(String[] args) { dog d1 = new dog("心情很好","白球"); d1.setFell("心情不好"); } }

浙公网安备 33010602011771号