- java分为两种数据类型: 1、基本数据类型 ; 2、引用数据类型 (String 和 我们创建的所有的类)
- 在面向对象的世界里,变量是没有市场的, Car c = new Car() 里的c这种变量被称为引用;
- 调用时直接输入方法是不行的,必须用对象或者引用"."这样的形式调用( . 表示调用 “.”可以翻译成“的”);
- 类中没有定义的内容不可以使用;
- 每次创建对象都是创建一个独立的个体;
- 在面向对象的世界里:
类:就是图纸/模具
属性:这一类事物拥有的共同属性;
动作:这一类事物共同能执行的功能;
对象:使用类创建的具体某一个东西;
- 写代码时:
类:要用class来定义;
属性:成员变量来描述,直接写在类中的变量;
动作:成员方法,不写static就是成员方法;
创建对象: 类 引用 = new 类();
- this关键字
this:当前类的对象;
this可以帮我们区分成员变量和局部变量;
- public void fly(){
System.out.println("color+"颜色的车会飞”);
//变量的查找顺序:先找自己方法内,如果自己没有,就去this里面找;
- java会自动地给每个类赠送一个无参数的构造方法,在创建对象时会自动调用;如果自己定义了构造方法,Java将不再赠送。
例:public Car(){
}
- 构造方法:
定义:在创建对象时,自动调用的方法;
语法:public 类名(传参){ }
注意:
1、没有返回值这一项;
2、在我们new的时候,自动调用构造方法;
作用:在创建对象的时候,给对象设置属性信息;
- 构造方法的重载:
构造方法也是方法,也可以进行重载;
作用:可以有更多的方式去创建对象;
使用this可以访问其他的构造方法:this();
- static静态用法:
静态的内容在内存重视保留一份的,并且各个对象之间进行共享
推荐使用类名去访问静态的内容
特点:
1、数据共享;
2、属于类的,并不属于对象;
3、优先与对象产生的;
静态构造器 > 通用构造器 > 构造方法
构造方法 -> 创建对象
- 所以是先有静态内容后有对象,在对象中可以正常访问静态内容,但是在静态内容中不能访问对象。
- 由于创建对象的过程是在静态内容加载完成之后,在静态方法和静态块中不能使用this。
- 静态的内容使用类名去访问。
点击查看代码
public class Test{
{
System.out.println("通用构造器");
}
static {
System.out.println("静态构造器");
}
public Test(){
System.out.println("构造方法");
}
public static void main(String[]s args){
new Test();
}
/*输出:
静态构造器
通用构造器
构造方法
*/