快捷键
Alt+Enter 导入包,自动修正代码(重中之重)
Ctrl+Y 删除光标所在行
Ctrl+D 复制光标所在行的内容,插入光标位置下面
Ctrl+Alt+L 格式化代码
Ctrl+/ 单行注释
Ctrl+Shift+/ 选中代码注释,多行注释,再按取消注释
Alt+Shift+上下箭头 移动当前代码行
快速生成标准javabean通用快捷键:alt+insert //可以选择生成有参还是无参的类
面向对象
类
public class Person {
String name;
int age;
public void eat(){
System.out.println("人要干饭");
}
public void drink(){
System.out.println("人要喝水"); //注意这里的输出格式
}
}
对象
1.导包
(特殊包)
2.创建对象
类名 对象名 = new 类名() -> 比如: Person person = new Person()
3.调动成员
System.out.println(person.name);
-
person.name = "金莲";
-
person.age = 26;
-
System.out.println(person.name);
-
System.out.println(person.age);
调用类中的功能
public class Phone {
String brand;//品牌
String color;//颜色
int price;//价格
public void call(String name){
System.out.println("给"+name+"打电话"); //调用: phone.call("金莲");
}
public String message(){
return "给金莲发短信";
/*
String mess = phone.message();
System.out.println(mess);
*/
}
}
匿名对象的使用
public class Demo01Person {
public static void main(String[] args) {
//原始方式
Person p = new Person();
p.name = "金莲"; //存放在了栈中
System.out.println(p.name);
p.eat();
System.out.println("=================");
//匿名对象
new Person().eat(); //直接输出
new Person().name = "大郎"; //没有栈,全部都在堆中
System.out.println(new Person().name);//null
}
}
了解成员变量局部变量
链式调用
citizen.birthday.day = 10; //调用类中的类
封装
用private将属性封装起来,外界不能直接调用,保护了属性
public class Person {
private String name;
private int age;
//为name提供get/set方法
public void setName(String xingMing) {
name = xingMing; //传入name,提供接口
}
public String getName() {
return name; //返回数值,提供出口
}
}
public class Test01 {
public static void main(String[] args) {
Person person = new Person();
person.setName("涛哥"); //传递数值
String name = person.getName(); //获取名字
System.out.println(name+"..."+age);
}
}
this的介绍
如果成员变量和局部变量重名时,我们遵循"就近原则",先访问局部变量
this概述:代表的是当前对象
作用:this可以区分重名的成员变量和局部变量
this点出来的一定是成员的变量
可以令类和对象建立接口时使用同一个名字
public class Person {
String name;
/*
哪个对象调用的this所在的方法,this就代表哪个对象
*/
public void speak(String name){
System.out.println(this+"........");
System.out.println(this.name+"您好,我是"+name);
}
}
public class Test01 {
public static void main(String[] args) {
Person person2 = new Person();
System.out.println(person2+"+++++");
person2.name = "奥特曼";
person2.speak("奥特曼之父"); //输出奥特曼您好,我是奥特曼之父
}
}
使用了同一个名字
public class Person {
private String name;
private int age;
//为name提供get/set方法
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
//为age提供get/set方法
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
}