JAVA语言的基础组成有:
1.关键字:被赋予特殊含义的单词。
2.标识符:用来标识的符号。
3.注释:用来注释说明程序的文字。
4.常量和变量:内存存储区域的表示。
5.运算符:程序中用来运算的符号。
6.语句:程序中常用的一些语句。
7.函数:也叫做方法,用来做一些特定的动作。
8.数组:用来存储多个数据的集合。
JAVA中的函数:
函数的定义:
函数就是定义在勒种具有独特功能的一段独立的小程序,函数也成为方法。
函数的格式:
访问修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…………){
方法体;
return 返回值;
}
访问修饰符:用来修饰函数的作用范围。
返回值类型:函数运行后的结果的数据类型。
参数类型:是形式参数的数据类型。
形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。
实际参数:传递给形式参数的具体数值。
return:用于结束函数。
返回值:该值会返回给调用者。
函数的特点:
a) 定义函数可以将功能代码进行封装
b) 便于对该功能进行复用
c) 函数只有被调用才会被执行
d) 函数的出现提高了代码的复用性
e) 对于函数没有具体返回值的情况,返回值类型用关键字void表示,那么该函数中的return语句如果在最后一行可以省略不写,系统会帮你自动加上。
注:
a) 函数中只能调用函数,不可以在函数内部定义函数。
b) 定义函数时,函数的结果应该返回给调用者,交由调用者处理。
c) 当函数运算后,没有具体的返回值时,这是返回值类型用一个特殊的关键字来标识该关键字就是void,void:代表的是函数没有具体返回值的情况。
d)
当函数的返回值类型是void时,函数中的return语句可以省略不写。
如何定义一个函数:
函数其实就是一个功能,定义函数就是实现功能,通过两个明确来完成:
1)、明确该功能的运算完的结果,其实是在明确这个函数的返回值类型。
2)、在实现该功能的过程中是否有未知内容参与了运算,其实就是在明确这个函数的参数列表(参数类型&参数个数)。
函数的作用:
1)、用于定义功能。
2)、用于封装代码提高代码的复用性。
注意:函数中只能调用函数,不能定义函数。
为什么要定义函数的名称:
1)、为了对该功能进行标示,方便于调用。
2)、为了通过名称就可以明确函数的功能,为了增加代码的阅读性。
主函数:
1)、保证该类的独立运行。
2)、因为它是程序的入口。
3)、因为它在被jvm调用。
函数的应用:
1) 两个明确
a) 明确要定义的功能最后的结果是什么?
b) 明确在定义该功能的过程中,是否需要未知内容参与运算。
示例1
class FunctionDemo
{
public static void main(String[] args)
{
int x = 4;
System.out.println(x*3+5);
x = 6;
System.out.println(x*3+5);
int y = 4*3+5;
int z = 6*3+5;
System.out.println(y);
System.out.println(z);
}
如上面的代码我们需要多次用到方法中同一个运算为了提高代码的复用性,我们就可以定义函数来简化代码,
首先我们要明确返回值得类型,因为结果我们需要一个int类型的值所以返回值定义为int类型,再来看一下参数,
由上图代码可以知道*3+5是不变的x的值是变化的需要我们指定一个参数,参数类型为int类型,返回值类型为
int类型所以我们要return一个int类型的值代码如下:
public int getValue(int x){
int a = x*3+5;
return a;
}
public static void main(String[] args) {
Demao1 d = new Demao1();
int i = d.getValue(5);
System.out.println(i);
}
提取方法后,当我们需要时调用方法只需要传入一个参数就可以得到我们想要的结果,简化了代码提高了代码的复用性。
函数的重载:
重载定义:函数名相同参数列表不同,与返回值类型无关。多态的一种
public int getValue(int x){
int a = x*3+5;
return a;
}
public double getValue(double x){
double a = x*3+5;
return a;
}
public int getValue(int x,int z){
int a = x*z+5;
return a;
}
由上面代码可以看出方法名相同参数列表不同,调用方法时会根据传入的参数来调用相同的方法。
函数的重写:
重写定义:子类重写父类的方法,方法名参数列表都相同。
父类代码:
package com.jdbc.test; public class ParentClass {
public int getValue(int a,int b){
return a+b;
}
}
子类代码:
package com.jdbc.test; public class ChildrenClass extends ParentClass {
public int getValue(int a,int b){
return a*b;
}
}
由上面的代码可以看出子类继承了父类的方法,当我们调用子类的方法时会将父类的getValue()方法覆盖掉。