目录
1.引言
2.认识类和对象。
3.认识成员函数。
4.认识构造函数。
1.引言时光飞快,不知不觉小生在学校学习java,已经半个学期了。也只学到了java一些语法的皮毛,当然没有好好听😨👂(甚至连皮都没有哈哈哈😄)
学了一段时间了也该做一个小小的总结了。😁
下面我就以一个在校大二学生的身份开始我的总结。因为初次创作没有经验,如果文章有错误欢迎指正,有待提升的地方也同样欢迎大家指出。
快快快发车了🐛🐛🐛。
2.认识类和对象在面向对象中,最最最重要的概念是类(Class)and对象(Object)。
或许有人会问为什么要使用类呢?
首先想象一下较大的软件中,产生几百个、几千个、……方法,恐怕越来越难维护。
用类来统筹一下这些方法,好多了。
1.让我们来了解如何定义类。
class 类名{ 所含变量定义;
}
这就是简单的定义一个类
举个栗子🌰;
class A{ string sex;
string name;
}
String 为变量类型
sex,name是类A中的成员变量;
-----------------------------------------------------------------------------------------------
2.在定义类之后只是定义了数据类型,想要使用类必须用该类型定义相应的“变量”。
由类定义“变量”叫作“实例化对象(Object)”
类名 对象名=new 类名();A Fff=new A();
就好像 “int Fff”一样,只不过 Fff中包含 sex,name两个变量。
*对象的引用性质:对象名也是一个引用,
对象名引用赋值是将引用赋值。(对象名给对象名赋值,实际上是让对象名指向同一个对象)
原先指向的对象被丢弃。
-----------------------------------------------------------------------------------------------
3.最基本的成员函数。引用目的:是为了写代码编程更便捷高效。
最简单的例子;
class 类名{
void 函数名称(){
函数内容
};
}
这就是定义一个成员函数的基本格式。
如何调用?------“对象名.函数名()”
⚠️注意点:1.在一个类内部的成员函数可以直接使用这一个类中的成员变量——
class A{
int b;
void shucks(){
System.out.println("B="+b);
}
}
2.程序运行到调用到成员函数时->跳转到执行成员函数->执行完毕后回头接着运行下面代码。
-----------------------------------------------------------------------------------------------
4.加入参数的成员函数。
引用目的:让函数根据参数来完成一些工作。
函数格式:void 函数名称(类型1 参数名1,类型2 参数2,·····,类型n 参数n){
函数内容;
}
调用方法:“对象名.函数名(参数值列表);
*在定义带参数的函数时如上面的例子是传入n个参数这些参数在函数内部使用,是局部变量,参数为形参。
*调用这种函数的时候(参数值列表传入的参数为实际参数)
在定义带参函数时如果函数中定义变量和类中成员变量重名的话,系统会屏蔽成员变量。
我们可以用“this.”表示类中成员
如下图所示
class Work{
String color;
int weight;
int age;
void X (String color,int weight,int age){
this.color=color;
this.weight=weight;
this.age=age;
}
}
5.带返回类型的成员函数。
有些函数在运行之后还能得到一个结果,这就是带返回类型的成员函数。
定义带返回类型函数的基本格式
class 类名 {
函数返回类型 函数名(类型1参数1,类型2参数2······类型n参数n){
函数内容;
return 和函数返回类型一致的参数或对象;
}
}
调用格式
对象名.函数名(参数值列表)
注意:在带返回类型的成员函数中遇到return就跳出这个函数(无返回类型的函数也可以使用return也表示跳出这个函数但是无法返回一个具体的值)
-----------------------------------------------------------------------------------------------
介绍完这几种成员函数后我们来看一下
* Java中函数的值传递
Java中只有值传递,没有引用传递。
想要了解值传递我们必须要知道什么是形参,什么是实参。
实参就是我们要传递给方法的实际参数
形参就是我们方法中定义的参数。
实参在方法外面形参在方法里面。
用我的话说就是
值传递:对形参的修改不会影响到实参。
引用传递:对形参的修改会影响实参。
Java中如果是基本数据类型就是值传递(把值复制一份值给形参)
如果是引用类型就是“引用”传递(把引用复制一份给形参)形参始终拿到的都是副本无论如何不能通过形参而改变实参数。
-----------------------------------------------------------------------------------------------
函数重载。
如果说给函数起不同的名字是为了更好的区分各个函数。
那么给某些函数起一样的名字就能够让代码更具有可读,便于区分性,十代码简洁明了。
我们要使用函数重载要满足以下条件之一:
1.函数参数的个数不同
2.函数参数的个数相同,但类型不同。
3.函数参数个数和类型都相同但是它们在参数列表出现的顺序不同。
-----------------------------------------------------------------------------------------------
4.认识构造函数。就跟家里买了一台新电视一样,刚买电视,电视需要初始化,你要把它的画面等等设置好。
Java中也是如此有些对象需要初始化。
构造函数也是一种函数,使用时必须遵守相依的格式:
1.函数名称要和类名一样。
2.不含返回类型。
还需值得注意的是:1.定义了构造函数之后,在实例化对象的时候必须传入相应的参数列表,否则会报错。
2.构造函数可被重载。
3.一个类中如果没有定义构造函数,系统会默认为这个类产生一个构造函数(该函数无参数,不做任何事情)。
4.用户自己定义了构造函数不可以用“类名 对象名=new 类名()”实例化对象,没有定义可以。
采用自己定义的构造函数实例化基本格式————
“类名 对象名=new 类名(传入给构造函数相应的参数列表)”
下面做个例子:
class A{
int age;
int weight;
String color;
void A(int age, int weight,String color){
this.age=age;
this.weight=weight;
this.color=color;
}
void shucu(){
System.out.println("a="+age);
System.out.println("w="+weiht);
System.out.println("c="+color);
}
}
public class B2{
public static void main(String[]args){
A ssd=new A(10,100,"蓝色");
ssd.shucu();
}
}
The end.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)