对字符串处理的办法 面向对象:有什么事情,找对象,调方法!
private关键字:只能在本类中才能修改,其他类中无法使用会报错。
针对每一个私有化的成员变量,都要提供get和set方法 set方法:给成员变量赋值 get方法:对外提供成员变量的值
package com.chris.demo;
public class GirlFriend {
//属性
private String name;
private int age;
private String gender;
public void setName(String n){
name = n;
}
public String getName(){
return name;
}
public void setAge(int a){
if(a >= 18 && a <= 50){
age = a;
}else{
System.out.println("非法参数");
}
}
public int getAge(){
return age;
}
public void setGender(String g){
gender = g;
}
public String getGender(){
return gender;
}
//行为
public void sleep(){
System.out.println("女朋友在睡觉");
}
public void eat(){
System.out.println("女朋友在吃饭");
}
}
package com.chris.demo;
public class GirlFriendTest {
public static void main(String[] args) {
//创建女朋友对象
GirlFriend gf1 = new GirlFriend();
gf1.setName("小芳");
gf1.setAge(18);
gf1.setGender("女");
System.out.println(gf1.getName());
System.out.println(gf1.getAge());
System.out.println(gf1.getGender());
gf1.eat();
gf1.sleep();
System.out.println("==========================");
/*GirlFriend gf2 = new GirlFriend();
gf2.name="晶晶";
gf2.age=22;
gf2.gender="御姐";
System.out.println(gf2.name);
System.out.println(gf2.age);
System.out.println(gf2.gender);
gf2.eat();
gf2.sleep();*/
}
}
==封装课程总结:==
成员变量和局部变量
就近原则:两个同名变量在调用时会优先赋近的变量值
局部变量:定义在方法体内 成员变量:定义在方法体外
如果想要调用成员变量:关键字前面要加上this.XX
构造方法:在创建对象时给成员变量进行赋值
定义构造方法时:要将无参构造和有参构造都写上(team operation) 当没有定义一个构造方法时,系统将默认给出一个无参构造方法
方法名相同,但是参数不同;这叫构造方法的重载
创建对象时:虚拟机会自动调用构造方法,作用是给成员变量进行初始化。