互联网科技程序园

java基础之---面向对象

2019-05-05  本文已影响66人  xml_

前言

最近又闲下来了,无意间在其他博客看见几篇java基础的文章,发现自己好多都忘记了。趁有时间就自己再回顾复习一下,所以接下来的文章都是基于前辈们的博客加上自己的思路进行整理记录,有问题欢迎指正。

正文

面向对象是java的最大特征之一,接下来主要从以下几个方面进行介绍:

一,java类的定义

//用class关键字定义一个类
class Student{ 
//定义成员变量
private String name;
private int age;
//定义方法
public void setName(String name){this.name=name}
public void setAge(int age){this.age=age}
public String getName(){return name;}
public int getAge(){return age;}

}

JAVA里面有class关键字定义一个类,后面加上类名。上面定义了一个student类,然后定义这个类应该具有的成员变量(即属性)和方法,上面定义了的String name和int age这个两个成员变量,或者叫属性。这样就在student这个类里面定义了两个应该有的属性,还定义了几个方法分别setName(String name)、setAge(int age)和getName()、getAge(),分别用来设置和获取学生的姓名和年龄。

二,成员变量

在JAVA里面的任何变量首先应该要声明,然后再赋值,然后再使用。成员变量和局部变量有一个重要区别:成员变量在类里面声明时如果不进行初始化,那么JAVA会默认给它初始化,而局部变量JAVA不会默认给它初始化,所以在方法里面声明一个局部变量如果不给它初始化时就会出错。默认初始化大多数都是0,boolean类型的为false,引用类型的为null,也可以直接打印成员变量看默认初始化的值。

三,引用

Java语言除了基本类型之外的变量类型都称之为引用类型,java中的对象是通过引用对其操作的。Java的基本数据类型包括整数型、浮动型、布尔型、字符型这四类。
具体过程看下图:


引用

四,构造方法

构造方法用来创建一个新的对象,和new组合使用。New一个对象的时候实际上调用了构造方法,构造一个新的对象的方法叫构造方法。构造方法的名字和类名一模一样,没有返回值,没有修饰符。如下所示:

//用class关键字定义一个类
class Student{ 
//定义成员变量
private String name;
private int age;
//定义一个构造方法
public Student(String name,int age){
    this.name=name;
    this.age=age;
}
//main函数中结合new调用构造方法
public static void main(String args[]){

      Student a = new Student('tom',22);
    }

}

下面是在main方法里面调用构造方法时的内存分析情况:

构造方法

当方法调用完成之后,栈里面为它分配的空间全部都要消失,即把这个方法调用时分配给它的内存空间释放出来,所以这个构造方法student调用完成之后,栈内存里面分配的两小块内存name和age就释放出来了,而new出来的对a象则永远留在了堆内存里面。

在平时的开发中我们发现我们new对象的时候,比如Student s = new Student()发现系统并没有给我们提供构造方法这是因为:声明一个类,若没有在类中指定其构造方法,编译器会为这个类自动添加一个空的构造方法。一旦给这个类里面指定了构造方法,那么系统就不会再给这个类添加构造方法了

原创作者:凌小样
作品链接:https://www.jianshu.com/p/a4820eefa075
【原创不易,转载请注明出处,感谢理解】
一位爱生活,爱创作,爱分享,爱自己的90后女程序员一枚,记录工作中的点点滴滴,一起学习,共同进步,期待能和优秀的您交上朋友

上一篇 下一篇

猜你喜欢

热点阅读