类和对象的基本概念
Java是面对对象的编程语言 面向对象是解决问题的一种思想 ,主要依靠对象之间的交互完成一件事情。
**类:**把相同属性和行为的一类对象抽象为类。类是抽象概念,如人类、犬类等 无法具体到某个实体。
对象:某个类的一个实体,当有了对象后,这些属性便有了属性值,行为也就有了相对的意义。
类是描述某一对象的统称,对象则是类的一个实例
类与对象的定义与使用
1.创建类的语法:
class 类名称{
成员变量/实例变量;
成员方法;
}
2.创建具体的对象:
类名称 引用名称 = new 类名称()``
WashMachine wash = new WashMachine();
这个对象的引用在堆中存储
示例 创建一个WashMachine类的对象
class WashMachine{
public String brand;//品牌
public String type;//型号
public double weight;//重量
public double length;//长
public double width;//宽
public double height;//高
public String color;//颜色
public void washClothes(){//洗衣服
System.out.println("洗衣功能");
}
public void dryClothes(){ //脱水
System.out.println("脱水功能");
}
public void setTime(){
System.out.println("定时功能");
}
}
public class Text {
public static void main(String[] args) {
WashMachine washMachine = new WashMachine();
washMachine.color = "白色";
washMachine.weight = 22.3;
washMachine.width = 12;
washMachine.dryClothes();
}
}
注意事项:
1.在Java中一个源文件只可以存在一个主类(public class)
2.类的命名规则使用的是大驼峰单词命名法,每个单词的首字母都要大写
3.类中的每一个成员变量都有默认值
4.在Java中有一个特殊引用 ==“null”==空引用,如果使用null直接去操作任何成员变量 ,成员方法,都会报错 会有空指针异常
static关键字
一、static修饰属性(类的属性 和类的变量)
1、当一个实例变量被static修饰后 ,就表示类的属性
static修饰的属性在JVM的方法区存储。
2、static修饰的属性,直接通过类访问,无需通过对象
运行结果:
有一个需要注意的地方:
WashMachine washMachine1 = null;
System.out.println(washMachine1.name);//这个相当于WashMachine.name
这里运行不会报空指针异常:static属性称为类属性,通过类名称直接访问,此时没有对象也能直接调用(包含该类的null引用)
3.final和static的区别
static String name; //静态变量,在方法区存储 类中所有对象共享
final int age = 2;//final修饰变成成员常量,在堆中存储,定义时必须赋值
在一般情况下 想在类中定义一个常量,通常会把static和final一起使用 称为类的常量
这样可以节省空间 起到共享的作用。
全局常量的命名规则:所有单词全部要大写,多个单词使用下划线分隔
static final String APPEARANCE_DESIGN = "高贵大方"; //外观设计 这就是全局常量的定义规则
第一个问题 :能不能在方法中定义一个static变量?
答案肯定不用多说 肯定时不能的。在方法中定义的变量是局部变量,在栈中存储,而static变量在方法区存储 是互相矛盾的。
成员方法可以访问静态变量和静态方法
在这里我们就讲完了类和对象的相关知识 下期我们来说说 面对对象的一些特性 也就是封装、继承和多态 大家三连支持 谢谢大家!!!