java部分基础理论

更新时间:2023-05-29 17:58:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

java部分基础理论

5-12
if else
int a=12;
/*标准if /else
if(a>10&&a>23){
System.out.println("成立");
System.out.println("成立");
System.out.println("成立");
}else{
System.out.println("不成立");
System.out.println("不成立");
System.out.println("不成立");
System.out.println("不成立");
}
*/


/*单句if带括号
if(a>10&&a>23){
System.out.println("成立");
System.out.println("成立");
System.out.println("成立");
}
*/



/*不带括号
if(a>10&&a>23)
System.out.println("成立");
*/



/*单句if else
if(a>10&&a>23)
System.out.println("成立");
else
System.out.println("不成立");
*/
-----------------------
数组
//数组就是数据的群组。
/*
1、 数组有类型,是不能混合的。
2、 定义数组的几种方式:
1、直接附值式
2、分布式定义
3、数组通过下标进行访问,下标从0开始。
4、数组有一个length的属性,表示它的长度。
*/


/*
String[] str = {"刘益豪","罗勇","罗刚","张百山","唐密","谢绍敏","张兴亮"};
int a=str.length;
for(int i=0;i<a;i++){
System.out.print(str[i]+" ");
}

*/



/*二维数组
1、二维数组中的每一个元素是一个一维数组。
2、直接访问二维数组中具体元素中的元素:数组的名称[第几个元素][中的第几个元素];
*/



/*
String[] n3={"张","百","山"};
String[][] names={{"刘","益","豪"},{"罗","勇",""},n3};
for(int i=0;i<names.length;i++){
for(int b=0;b<names[i].length;b++){

}
System.out.print(" ");
}
*/
-----------------------
5-13
面向对象的概念
一、在面向对象程序设计中有二个概念,类与对象。
1、类是一种抽象的概念,例如:人就是一个类。
2、对象是一个具体的概念,例如:张三、李四等具体的人就是对象。
3、在类中去找到(实例化)某一个对象的过程就叫做面向对象。

二、类的概念:
在类中有二个概念:属性与方法,

1、例如:张三是一个对象,张三的年
龄、身高、姓名、体重等就是他的属性。

2、一个类中的属性可以把它看作模板,每一个对象都拥有一份属性的副本。

3、属性的作用之一用于保存数据。

4、方法用于代码的复用,一个类中的方法只有一份,
所有的对象都共用同一份方法。

5、函数可以接收参数,且可以一次性接收多

java部分基础理论

个参数。

-----------------------
5-14
构造函数
1、 构造函数的名称与类名相同。
2、 构造函数是在创建对象的同时调用的。
3、 构造函数中没有返回类型也不需要注明。
4、 构造函数的作用是当你在创建对象的同时,初始化类的一些必要信息。
5、 构造在不写的时候系统也会自动生成一个默认的空参数的构造函数。
6、 如果自定了构造函数,那么系统将不会自动生成构造函数。
--------------
值传递与引用传递,属性与方法的公式
一、基本类型的参数传递是属于值传递,对象类型的传递是属于引用传递(引用地址)。

二、函数的重载
在一个类中方法名称可以相同,但参数个数或者类型
必须有所不同,这样的方法称之为函数的重载,返回类型
不可用作重载的区别根据

三、System输出语句,可以直接输出带返回类型的方法

四、面象对象的三大特征:
继承 、封装、 多态
1、封装:类中包含属性与方法,将属性与方法放在一个类中就构成了封装

五、定义属性与函数的公式

定义属性的公式
O 为可有可无
L 必须有的
作用域(O)+修饰符(O)+关键字(O)+类型(L)+变量名(L); 修饰符static 关键字final

定义方法的公式
O 为可有可无
L 必须有的
作用域(O)+修饰符(O)+关键字(O)+返回类型(L)+方法名(L)+参数…..(O);

注:无返回值注明void, 有返回值注明返回类型,并且return 返回,
在方法中如果使用了return关键字则会立及终止区块的执行。
-----------------------
5-15
作用域与包的概念
一、通过package关键字把文件夹转化为软件包
例: package test;

二、在不同软件包之间的类相互访问,必须要通过import关键字导入包。
例:import test.*; import test.具体的类;

三、作用域
作用域是指一个类、方法、属性的使用范围。
public 修饰在类,表示这个类可以被外部软件包所访问。

public 修饰在方法和属性,可以在本类中、同一个包中、不同包中进行访问。
private 不能修饰在类(内部类除外),只能在本类中访问。
protected 表示在同一个类、包中可以访问,不同包中的子类可以访问(实现或继承)。
-----------------------
5-16
静态
1、静态(static)属于类所有,而不属于对象
静态可以修饰在属性与方法,
修饰在属性表示这个属性被所有对象所共享,
修饰在方法表示这个方法只能访问本类中的静态成员(主要用于区分静态与非静态避免产生混淆)。

由于所有对象都共享静态属性,因此我们可以直接通过类名称.

java部分基础理论

静态,来操作类中的静态成员。

静态块只能访问本类中静态的成员,静态块在类初始化的时候会执行一次,
并且只执行一次, 静态块用于为静态成员附初值,还可以用于初始化一些只执行一次的代码。

构造函数不能修饰为静态。
-----------
this的使用
this代表当前的对象,
通常在本类中非静态方法之间相互调用时,this都会隐含生成,你也可以明确的声明

在静态方法中不能使用this //静态方法属于类本身,而this是对象

this可以用于区分形参与属性之间的重名。 //=name;

this还可以在构造函数中去调用构造函数。 // this(String name,int age);
通过this调用构造函数的语句必须在构造函数的第一行中声明
-----------
继承
继承是指子类继承父类后,拥有了父类中非private的属性与方法。

子类的构造函数第一行会默认使用super()来调用父类中空参数的构造函数,
也可以主动声明super();

通过super()引用父类构造函数的语句,只能在构造函数的第一行中使用,
因此在调用构造函数的时候,this与super是不能同时使用的。


注:子类扩展父类后,其主要作用是能够使用父类中功能性的方法,并不一定要给父类中的属性赋值。

子类重写父类中的方法,方法名称、返回类型、参数的个数
与类型完全相同,这样的方法称之为函数的重写,
需要注意的是作用域只可以增加而不能够缩小
-----------------------
5-17
多态
多态是指一个类型可以存储多种状态,
在多态中,父类型可以接收子类型
接口可以接收它所有实现类的类型

-----------------------
5-19
接口说明:
接口与抽象类类似,只不过接口中的所有方法都是抽象的。
1、接口中的方法作用域默认是public。
2、接口中的属性默认是public static final。
注:接口与抽象类都是用于配合多态。



抽象类说明:
抽象类是一种代码规范,并不是说一定要使用。
1、一个类中只要有一个抽象方法,那么这个类就是一定是抽象类
2、抽象类是不能创建对象的,因此需要某个类去扩展它。
3、继承抽象类的类就必须要实现抽象类中所有的抽象方法。
4、抽象类中可以有抽象也可以有实现。

补充:所有的类都直接或者间接的继承Object类,所有
ng包下的类
都不需要引包。


抽象类与接口的区别:
1、接口中方法都是抽象的,而抽象类中的方法有实现有抽象。
2、类与类之间的关系:单一的继承,但是一个类可以实现多个接口。

选择抽象类或接口的时机:
1、当一个类中可以有抽象(方法)也可以有实现的时候,选择使用抽象

java部分基础理论

类,反之一个类中只有抽象没有实现,选择接口。
2、接口与类之间没有继承关系,因此一个类它可以先继承某一个类后,再去实现接口。

本文来源:https://www.bwwdw.com/article/vdg4.html

Top