@[TOC] java学习笔记
类的定义P99
1.Java中的class定义类
成员变量:对应事物的属性
成员方法:对应事物的方法
例子
定义一个类,用来模拟“学生”事物,其中就有两个组成部分:
属性(是什么) ——————>>> 成员变量
- 姓名 ——————>>> String name //姓名
- 年龄 ——————>>> int age //年龄
行为(能做什么) ——————>>>成员方法
- 吃饭——————>>> public
staticvoid eat(){}
//成员方法没有static关键字 - 睡觉——————>>>public void sleep(){}
- 学习——————>>>public void study(){}
2. 实例
//注意事项
- 成员变量是定义在类当中的,在方法外边
- 成员方法不要写static关键字,和有没有返回值没有关系
public class student{
//成员变量
String name;
int age;
//成员方法
public void eat(){
System.out.println(“吃饭!”)
}
public void sleep(){
System.out.println(“睡觉!”)
}
public void study(){
System.out.println(“学习!”)
}
}
private关键字P108-P110
1. 面向对象的三大特征:封装性,继承性,多态性
2. 封装性在java中的体现
//方法就是一种封装;
//private关键字也是一种封装;
3. private关键字的练习
public class student{
private String name;
private int age;
private boolean male;//对于基本类型布尔值类型的getter方法一定要写成isXXX的形式
public void setMale(boolean b){
male=b;
}
public boolean isMale{
return male;}
public void setName(String str){
name=str;
}
public String getName(){
return name;}
public void setAge(int num){
age=num;}
public int getAge(){
return age;
}
}
public class Demo04student(){
public static void main(String[] args){
Student stu=new Student();
stu.setName=(“卢汉”);
stu.setAge=(20);
stu.setMale=(true);
System.out.println(“姓名”+getName());
System.out.println(“年龄”+getAge ());
System.out.println(“是不是爷们儿”+isMale());
}}
输出
姓名:卢汉
年龄:20
是不是爷们儿:true
this关键字P111
1. 实例
Public class Person{
String name;
public void sayHello(String who){
System.out.println(who+“,你好,我是”+name);
//who是对方的名字,成员变量name是自己的名字
}
}
public class Demo01Person{
public static void main(String args[]){
Person person=new Person();
person.name=” 王健林”;
person.sayHello(who:”王思聪”);
} }
输出:王思聪,你好,我是王健林
public class Person{
String name;//成员变量name
public void sayHello(String name){//方法参数name
System.out.println(name+“,你好,我是”+name);
}
}
public class Demo01Person{
public static void main(String args[]){
Person person=new Person();
person.name=” 王健林”;
person.sayHello(name:”王思聪”);
} }
输出:王思聪,你好,我是王思聪
//当方法的局部变量和成员变量重名的时候,根据就进原则,优先使用局部变量
如果需要访问成员变量,需要使用格式:this.成员变量名//
修改以后
public class Person{
String name;//成员变量name
public void sayHello(String name){//方法参数name
System.out.println(name+“,你好,我是”+this.name);
}
}
//通过谁调用的方法谁就是this
构造方法P112
1. 知识点
1.构造方法是专门用来创建对象的方法,当我们通过关键字new创建对象时,其实就是在调用构造方法,具体格式:
public 类名称(参数类型 参数名称){
方法体
}
2. 注意事项:
- 构造方法的名称和所在的类名称完全一样,就连大小写也要一样
- 构造方法不要写返回值类型,连void也不写
3.构造方法不能return一个返回值
4. 如果没有编写任何构造方法,编译器将会默认赠送一个构造方法,没有参数,反方法体,什么事情都不做
public student(){}
5. 一旦编写了一个构造方法,编译器将不再赠送
6. 构造方法是可以进行重载的
2.实例
public class Student{
private String name;
private int age;
//方法重载
//无参构造方法
public Student(){
System.out.println(“无参构造方法执行了!!”);
}
//全参构造方法
public Student(String name,int age) {
System.out.println(“全参构造方法执行了!!”);
this.name=name;
this.age=age;
}
//private 的gettersetter
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
public void setAge(int Age){
this.age=age;
}
public int getAge(){
return age;
}
}
Public class DemoStudent(){
public static void main(String args[]){
Student stu1=new Student();***//无参构造***
Student stu2=new Student(name:赵丽颖,age:20);***//全参构造***
System.out.println(“姓名:”+stu2.getName()+”年龄:”+stu2.getAge());
}
}
定义一个标准的类P113
/*一个标准的类通常要有下面四个组成部分:
1.所有的成员变量都要使用private关键字
2.为每一个成员变量编写一对儿Getter/Setter方法
3.编写一个午餐书的构造方法
4.编写一个全参数的构造方法
这样标准的类叫做java bean
*/
public class student {
private String name;
private int age;
public student() {
}
public student(String name, int age) {
this.name = name;
this.age = age;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class Demo01student {
public static void main(String[]args) {
student stu1=new student();
stu1.setName("迪丽热巴");
stu1.setAge(20);
System.out.println("姓名:"+stu1.getName()+"年龄:"+stu1.getAge());
student stu2=new student("古力娜扎", 20);
System.out.println("姓名:"+stu2.getName()+"年龄:"+stu2.getAge());
stu2.setAge(22);
System.out.println("姓名:"+stu2.getName()+"年龄:"+stu2.getAge());
}
}
输出:
姓名:迪丽热巴年龄:20
姓名:古力娜扎年龄:20
姓名:古力娜扎年龄:22