java面向对象

一.面向过程的编程思想

在编程中,以流程为基本单位,注重的是功能的实现

缺点:代码的耦合性较高,不利于维护,可扩展性较低


二.面向对象的编程思想

在现实生活中,以具体的事物(对象)为单位,从它的属性(特征)和功能

(行为)进行描述,就是在利用面向对象的编程思想


特点:

1.面向对象的编程中一定会用到面向过程的编程思想

2.所有的编程语言都是来源于生活服务于生活

3.面向对象的编程思想更贴近于现实生活中人类的正常思维方式

4.在面向对象编程的语言中有设计模式一说

5.面向对象的四大特征:

抽象、封装、继承、多态


三.对象

对象就是现实生活中具体存在的一个事物

《java编程思想》——>万事万物 ,皆对象


特点:

1.无论两个事物有多么相似或相近,永远都是两个不同的对象

2.一项法律、法规、规章制度,政策都是对象


四.抽象

所谓的抽象,就是把同一类中共有的属性(特征)和功能(行为)进行抽取,归纳,总结

注意:其实抽象就是对同一类事物进行整体的概括性的描述


五.封装

所谓的封装就是包装,就是把抽象出来的属性和行为进行包装


目的:

提高了抽象出来的属性和行为的安全系数

封装包括:

属性的封装和功能(方法)的封装


注意:

封装不是绝对的封装,在适当的时候,可以通过其它方式来访问封装中的属性和功能


一个完整的封装一定是把属性和方法封装在一块

属性的封装和方法的封装是密不可分的


六.类

1.抽象,封装的具体的呈现方式就是类(class)

2.类和对象的关系

类是对对象的抽象

对象是类的实例化

3.如何定义类


语法:

[访问修饰符] class 类名{


}


类命名:

首字母一定要大写,如果类名有多个单词组成,则每个单词的首字母都要大写。大驼峰命名法


七.方法

方法就是用来实现某种功能效果的代码块


定义语法:

[访问修饰符] 返回值类型 方法名称(参数列表){


}

step:无返回值无参数的方法。语法:


[访问修饰符] void 方法名称(){


}

void  就是表示无返回值的方法

  step:无返回值有参数的方法。语法:


[访问修饰符] void 方法名称 (参数列表){


}


1.方法中参数称为形式参数(形参),数据类型 参数名称

  如果有多个参数,参数之间用逗号隔开

2.在调用有参数的方法时,需要传递具体数据(实际参数——>实参)

3.在传递参数时,一定要和方法中参数的顺序一致


step:有返回值无参数的方法。语法:

[访问修饰符] 返回值类型 方法名称(){

//方法的最后一句,添加上return返回值

return 返回值

}

返回值类型由返回值决定,而且有返回值的方法只能一次返回一个值

step:有返回值有参数的方法。语法:

[访问修饰符] 返回值类型 方法名称(参数列表){


return 返回值

}


八.对象的创建和使用

1.构造方法

a).方法名称和类名相同

b).没有返回值,也没有void

c).不能被static等关键字修饰

2.语法:

[访问修饰符] 类名(参数列表){


}


3.创建对象的语法:

类名 对象名称=new 构造方法();


4.对象的使用:

对象可以调用属相和方法

对象名称.属性名称;

对象名称.属性名称(参数列表);

5.构造方法作用:

1.创建对象

2.对成员属相(全局变量)进行初始化

6.构造方法的分类:


1.无参数的构造方法和有参数的构造方法

2.无参数的构造方法包括:

a).隐式无参数的构造方法

当一个类中,没有任何形式的构造方法时,JVM会为当前的类提供

一个隐式的无参数的构造方法

b).显示的无参数的构造方法

3.无参数的构造方法又叫“默认的构造方法”

4.有参数的构造方法,在使用时需要传递实参


如果一类中已经存在一个用参数的构造方法,还想通过无参数的构造方法创建

对象,则可以直接在当前类中添加一个无参数的构造方法


注意:

当一个类中,已经显示的存在了一个任何形式的构造方法,那么JVM都不会再为当前类提供一个隐式的无参数的构造方法

一个类中可以有多个构造方法,但是构造方法的参数不能相同


九.方法重载

方法重载是多态的一种表现

多态:就是同一个事物,在不同的情况下有多种表现形式


在同一个类中,有多个方法名称相同,但是参数列表不同,参数列表的不同包括(个数、类型、顺序的不同),这就是方法重载


注意:

1.普通方法,构造方法都可以方法重载

2.方法的返回值类型不同,不能算方法的重载


十.this关键字


注意:

当方法中的参数名称或局部变量名称和成员属性名称一致时,会以参数名称或局部变

量为主(就近原则)


前提条件:

this只能在没有被static修饰的方法中使用


作用:

this表示对当前类的某个对象的引用(就是说可以把this关键字当作对象来使用)


注意:

哪个对象调用该方法,那么该方法中的this关键字就指向调用该方法的对象


用法:

1.当方法中的参数名称或方法中的局部变量名称和类中的成员属性(全局变量)名称完全一致时

需要用this来区分作用域


2.当this(参数列表)的形式,出现在构造方法的第一句代码时,就表示当前的构造方法,调用

了该类中其他的构造方法


十一.代码执行的流程

普通方法之间的调用,直接写方法名称即可,无需通过对象来调用

代码执行的流程:

main——>调用其他方法——>main方法


十二.方法中参数的传递


在java中基本数据类型和引用数据类型进行参数传递时,都是采用的

值传递(就是传递的具体的数据)

基本数据类型传递的是值得本身(基本数据类型传递时,就是把本身复 制了一份,进行传递,无论目标方法怎么更改和这个值的本身没有任何

关系)

引用数据类型传递的是值本身所在的内存地址


十三.打包

通过package来创建带包的类,语法:

package 包名;


注意:包名的目录层次通过【.】来表示


编译带包的类,如果从当前目录生成带包结构的字节码,语法:

javac -d . 类名.java

如果从指定的目录生成,带包结构的字码,语法:

javac -d 目录 类名.java


运行带包的字节码,语法:

Java 包名.类名;

注意:

包名,类名又叫类的全限命名


十四.导包

通过import导入目标类所在的包,语法:

import 包名.类名;或import 包名.*;


注意:

1.import一定要位于package语句的下面

2.如果两个类位于同一个包中,无需导包



  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值