最近这段时间,学习了类和对象,觉得还是比较吃力的,学习了这些之后才算是开始踏入Java的大门,路漫漫其修远兮,吾将上下而求索,加油吧!下面呢,我就将相关的知识点梳理一下(分多个博文)
初识类和对象
类和对象会一直伴随着java,类和对象都是比较抽象的概念,具体什么是类,什么是对象嘞??
我们可以这样来简单的理解:
类呢相当于一个模具,图纸,是一个模板;
对象呢就是通过模具,图纸做出来的实体。
下面呢,咱们来区分一下面向对象与面向过程两个概念:
C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过调用函数逐步解决问题
Java是基于面向对象的。面向对象注重的是对象,也就是参与过程所涉及的主题是通过逻辑将一个个功能实现连接起来的。
类就是这一类对象的统称,对象就是这一类具体化的一个实例。
面向对象的设计,开发时:找对象,建对象,用对象,并维护对象之间的关系。
类和对象的实例化
定义一个类的语法是通过关键字class来完成的,后面跟着类名Person
注意哦,这里的类名是按照大驼峰命名的
一个类都拥有什么呢?属性(字段)、行为(方法)
代码示例:这里呢,年龄,姓名为成员属性,类中的函数,像吃饭,睡觉都是成员方法。
class Person{
public int age;
public String name;
public void eat(){
int a = 10;//局部变量
System.out.println("吃饭"+a);
}
public void sleep(){
System.out.println("睡觉");
}
}
类是一个模板,如何去产生一个对象呢?
- 通过new关键字实例化一个对象,也可以叫做创建一个对象
- 一个类可以产生(实例化)多个对象
- 什么是字段?类里面,方法外定义的变量,叫做字段,在语法上也叫作成员变量,成员属性
代码示例:
public static void main(String[] args) {
Person person1 = new Person();//实例化
Person person2 = new Person();
Person person3 = new Person();
Person person4 = new Person();
}
我们该如何去访问age和name呢?
需要通过对象的引用来访问字段,看下面的程序代码:通过person.name和person.age来访问,即对象引用.成员变量
方法也叫作成员方法,引用通过 对象引用.成员变量名
public static void main(String[] args) {
Person person = new Person();
//System.out.println(name);这样可是不对的哦!!!
System.out.println(person.name);
System.out.println(person.age);
person.eat();
person.sleep();
}
运行结果:
null //name是引用类型
0 //age是简单类型
吃饭10
睡觉
为什么结name是null,age是0?
基本数据类型的默认值:引用类型String默认值是null;简单类型默认值是自己多对应的0值,即int是0,double是0.0,float是0.0f,long就是0F;boolean类型默认值是false;char类型的默认值是’\u0000’