尚硅谷Java基础学习笔记五
来源:互联网 发布:全球域名商排行榜 编辑:程序博客网 时间:2024/06/10 09:33
1.面向对象概念
面向过程:谓语与宾语
面向对象:主语与谓语
三大特征:
封装(Encapsulation)
继承(Inheritance)
多态(Polymorphism)
2.类和对象
类(class):对一类食物的描述,是抽象的、概念上的定义
对象(object):是实际存在的该类事物的每个个体,也称实例(instance)
声明一个类
<修饰符> class <类名> (public:类可以被任意访问)
{
<属性声明>
<构造器声明>
<方法声明>
}
声明属性
<修饰符> 类型 <属性名>[=初值];
private(-):该属性只能由该类的方法访问
public(+):该属性可以被该类以外的方法访问
声明方法
<修饰符> <返回类型> 方法名 (参数表)
{
语句;
}
返回类型:return语句传递返回值;没有返回值用void
对象的创建
使用 new+构造方法 创建一个新的对象 例:Human tom = new Human();
对象的产生
例:Person p1 = new Person();
当一个对象呗创建时,会对其中各种类型的成员变量自动进行初始化赋值
3.对象的生命周期
4.匿名对象
可以不定义对象的句柄,而直接调用这个对象的方法,这样的对象叫做匿名对象。 例:new Person().shout();
如果对一个只需要进行一次方法调用,那么久可以使用匿名对象
经常将匿名对象作为实参传递给一个函数调用
5.信息的封装和隐藏
Java中通过将数据声明为私有的(private),再提供公开的(public)方法:getXXX和setXXX实现对该属性的操作,以实现下述目的:
隐藏一个类的实现细节;
使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作;
便于修改,增强代码的可维护性;
6.构造器
与类同名;不含返回值;
当一个类的实例对象产生时,这个类的构造方法就会被自动调用
<修饰符> 类名 (参数表)
{
语句;
}
Java语言中,每个类至少有一个构造方法
如果类的定义者没有显式的定义任何构造方法,系统将自动提供一个默认的构造方法:
默认构造方法没有参数
默认构造方法没有方法体
默认的构造方法:Animal(){}
所以:不编写构造方法就能用new Xxx()创建类的实例。
Java类中,一旦类的定义者显式定义了一个或多个构造方法,系统将不再提供默认的构造方法;
构造器的主要作用:利用构造器参数初始化对象的属性。
7.函数重载
返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,….)
{
程序代码
return 返回值;
}
其中:
形式参数:在方法被调用时用于接收外部传入的数据的变量。
参数类型:就是该形式参数的数据类型。
返回值:方法在执行完毕后返还给调用它的程序的数据。
返回值类型:函数要返回的结果的数据类型。
实参:调用函数时实际传给函数形式参数的数据。
函数的重载就是在同一个类中允许同时存在一个以上的同名函数,只要它们的参数个数或类型不同即可。
重载方法的参数列表必须不同
重载方法的返回值类型可以相同,也可以不同
调用时根据方法的参数类型来区别
8.this关键字
this关键字在java程序里的作用和它的词义很接近,它在函数内部就是这个函数所属的对象的引用变量。
每个成员方法内部,都有一个this引用变量,指向调用这个方法的对象
9.包
package语句作为Java源文件的第一条语句,指明该文件中定义的类所在的包。(若缺省该语句,则指定为无名包)。它的格式为:
package <顶层包名>[.<子包名>]* ;
举例:pack\Test.java
package p1; //指定类Test属于包p1
包对应于文件系统的目录,package语句中,用‘ .’ 来指明包(目录)的层次;
为使用定义在不同包中的Java类,需用import语句来引入所需要的类。Import语句告诉编译器到哪里去寻找类。
语法格式:
import 包名[.子包名…]. <类名 |*>
java.lang----包含一些Java语言的核心类,如String、Math、Integer、System和Thread,提供常用功能。
java.net----包含执行与网络相关的操作的类。
java.io----包含能提供多种输入/输出功能的类。
java.util----包含一些实用工具类,如定义系统特性、使用与日期日历相关的函数。
- 尚硅谷Java基础学习笔记五
- 尚硅谷Java基础学习笔记一
- 尚硅谷Java基础学习笔记二
- 尚硅谷Java基础学习笔记三
- 尚硅谷Java基础学习笔记四
- 尚硅谷Java基础笔记
- 尚硅谷java基础学习笔记之java语言概述
- 尚硅谷java基础学习笔记之面向对象(1)
- 尚硅谷Webservice学习笔记
- 尚硅谷学习笔记----国际化
- 尚硅谷_JavaScript_学习笔记
- 尚硅谷_jQuery_学习笔记
- 尚硅谷_Ajax_学习笔记
- 尚硅谷-Maven学习笔记
- 尚硅谷Java学习-入门
- 尚硅谷java学习笔记——11.java多线程
- 尚硅谷java学习笔记——2.基本语法
- 尚硅谷java学习笔记——6.异常处理
- http
- 常用定义总结
- Oracle trunc()函数的详细使用介绍
- 两个会话上同时执行如下创建Procedure的脚本引发的library cache lock
- 查看so库的方法
- 尚硅谷Java基础学习笔记五
- org.eclipse.ui.editors.templates扩展点
- c# 正则表达式
- 定义结构体与类组合的区别和如何用它们
- 数学之美系列十八:矩阵运算和文本处理中的分类问题
- library cache pin和library cache lock
- magento获取当前路径
- Codeforces 445B. DZY Loves Chemistry
- 软解析和硬解析