Java-面向对象

一,面向对象的概念

面向对象是一种编程思想。这种思想指导程序员思考问题,解决问题都以“对象”为中心。

当遇到新的问题时,就要想:

1。他是不是需要对象

·不需要对象:例如 求两个整数的最大值,不需要对象,直接调用Math .max(a,b)

2.如果需要对象,就要思考,有没有现成的类可以创建它的对象,如果有就可以直接 new

2.如果不存在这样合适的类,就要先声明一个新的类,再来创建对象。

二。类和对象

1。类的定义

一类具有相同特性的事物的抽象描述。

2.对象的概念

对象是一类事物的某个具体的个体,实例。

学术类是代表事物

具体的某个学生是一个对象。

3.类和对象的关系

类是创建对象的模板,或者类是众多对象的抽象描述。编码的角度,肯定是先写类,再new对象。

类是抽象的,对象是具体的,对象也成为类的实例(实际存在的个例)。

4。类的声明格式

修饰符 class 类名{//类名:每个单词的首字母大写

}

5.对象的创建格式

new 类名()

new 类名(实参列表)

如果new出来,没有用变量引用他,他就是匿名对象。这种对象是一次性的。

类名 对象名 = new 类名();

类名 对象名 = new 类名(实参列表);

目前自己写的类,还没有学习构造器之前,都是用new 类名()创建对象

new 类名(实参列表)

三,类的成员

1。类的成员分为5个

·成员变量

·成员方法

·构造器

·成员内部类

·代码块

2,类的成员变量

概念:

类的成员变量,又称为属性,用来描述事物的数据特征。即该类的对象需要表示哪些数据,就需要声明那些成员变量。

声明格式:

成员变量声明的位置:在类中,方法外。

和他对比的局部变量声明位置:在方法里面

3.成员变量的使用

在其他类里:

对象名.成员变量

4.成员变量的特点

·每一个对象的成员变量值都是独立的

·对象的成员变量有默认值

byte short int long :0

float double:0.0

char:编码值为0的空字符

boolean:false

其他数据类型(引用数据类型):null。

5.成员变量是引用数据类型

·引用数据类型的成员变量(或者叫属性)如果没有赋值,默认值是null,容易发生NullPointerException空指针异常。

·引用数据类型的成员变量必须给它赋值一个相同类型的对象。

·引用数据类型的成员变量可以继续 .成员 ,至于能出什么,看成员变量的类型

四,包 package

包的作用;

可以分文件夹管理众多的类

避免重名

限定某些类,成员的可见性范围。

五,类的成员

类的成员方法:

1 ,非静态方法

·之前写方法修饰符都是 public static ,没有static的方法被称为非静态方法,或者实例方法。

·一个类的非静态方法通常要通过这类的"对象.方法()"的形式进行调用,例如:c1.area();

·在同一个类中,非静态方法可以直接使用本类的属性

2.静态方法和非静态方法的区别?

如果方法中需要用到非静态的属性,那么这个方法就不要声明为静态方法,即只能声明为非静态方法。

如果方法中的功能完成,和非静态的属性完全无关,那么可以声明为静态方法更方便一点。

六,对象数组

int [] arr ={1,2,3,4,5};//元素是基本数据类型

我们现在可以把对象放到数组中。

静态初始化:

//一维数组通用静态初始化格式
元素的数据类型[] 数组名 = {元素1,元素2,元素3,...};

//一维对象数组静态初始化格式
类名[] 数组名 = {对象1,对象2,对象3,...};

动态初始化:

//一维数组通用动态初始化格式
元素的数据类型[] 数组名 = new 元素的数据类型[长度];

//一维对象数组动态初始化格式
类名[] 数组名 = new 类名[长度];

//一维对象数组给元素赋值格式
数组名[下标] = 对象;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值