关于Java中的类和对象笔记

cnblogs 2024-09-12 08:09:12 阅读 61

零基础学Java

什么是对象:在现实世界中,随处可见的一种事物就是对象。

面向对象的特点:封装性、继承性、多态性

1.1 封装(思想):对象的属性和行为封装起来,载体即为类。保存类数据结构的完整性,提高了程序的可维护性。

1.2 继承:可以继承父类的行为和属性,其中还可以添加独特的属性及行为。可复用性强,提高系统性能,减少系统在使用过程中出现的错误概率。

1.3 多态:父类的对象运用于子类特征

1.4 类:成员变量

`package Demo01;

public class Book {

private String name; //成员变量

public String getName(){ //获取图书方法

return name;

}

public void setName(){ //设置设置图书

this.name = name;

}

}

`

1.5 成员方法

权限修饰符 返回值类型 方法名(参数类型 参数名){

...//方法体

return 返回值;

}

1.6 权限修饰符

private: 本类中是可见的,同包和其他类或子类不可见,其他包的类或者子类是不可见的。

protect: 本类中是可见的,同包和其他类或子类可见,其他包的类或者子类是不可见的。

public: 本类中是可见的,同包和其他类或子类可见,其他包的类或者子类是可见的。

1.7 局部变量的使用

`package Demo01;

public class ChangeDemo {

public static int[] exchange(int[] arr){

int temp = arr[0];

arr[0] = arr[1];

arr[1] = temp;

return arr;

}

<code>public static void main(String[] args) {

int arr[] = {1,2};

System.out.println("第一个值为"+ arr[0] + "第二个值为" + arr[1]);

arr = exchange(arr);

System.out.println("第一个值为"+ arr[0] + "第二个值为" + arr[1]);

}

}

`

1.8 this关键字

特点:只能用于本类。可以调用成员变量和成员方法

对象.成员变量 对象.成员方法

1.9 构造方法

特点:构造方法没有返回值、构造方法名称要与本类的名称相同。

`package Demo01;

public class Eggcake {

int eggCount; //鸡蛋灌饼的个数

public Eggcake(int eggCount){

this.eggCount = eggCount; //将参数值eggcount的值赋值给成员变量属性eggcount

}

public Eggcake(){ //定义一个无参构造方法,默认加一个鸡蛋

//调用参数为鸡蛋饼里蛋的个数,并设置个数为1

this(1);

}

public static void main(String[] args) {

Eggcake cake1 = new Eggcake();

System.out.println("不要求加,会有"+cake1.eggCount);

Eggcake cake2 = new Eggcake(2);

System.out.println("要求加,会有" + cake2.eggCount);

}

}

`

2.1 静态变量和静态方法

static关键字特点:设置为静态,共享一个内存空间,被声明为static的变量和方法被称为静态成员。

`package Demo01;

public class Cust {

static int count = 0;

String name;

public Cust(String name){

this.name = name;

count++;

}

public static void main(String[] args) {

Cust c1 = new Cust("tom");

System.out.println("我是第" + Cust.count + "名顾客,我叫" + c1.name);

Cust c2 = new Cust("tim");

System.out.println("我是第" + Cust.count + "名顾客,我叫" + c2.name);

Cust c3 = new Cust("tny");

System.out.println("我是第" + Cust.count + "名顾客,我叫" + c3.name);

}

}

`

总结:在静态方法中不能使用this关键字、不可以直接调用非静态方法、局部变量不能使用static关键字进行声明、主方法必须用static关键字进行声明、只有内部类可以使用static关键字进行声明。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。