Java中main函数

Java中main函数,第1张

main函数是一个程序的入口,也是出口,main函数其实就是类里的一个方法,方法只能在类里声明了,所以maion函数必须声明在一个类里,一个程序里只有一个main函数,因为类与类之间是相与调用的。一个程序从开始运行就会先找main函数,然后再一步一步的执行,如果有多个main那么程序就会报错,因为他不知道该从那个门口(main函数)进,然而类为什么可以有多个呢,你还记的JAVA的三大基本特征么,即封装,继承,多态。而封装就是我们所说的类,他是把所有相同的属性,方法归纳到一起,即组成一个类。这样给你打个比方吧

main函数所在的一个类就相当于一个城市,而main函数就是城市的一个入口,并且只有一个入口,也可是出口,而城市中又有许多小区,我们叫他为类吧,而小区里的房子又基本相同,这也就验证了我们把同一类物品归为一类,即封装在一个类里,而每个小区又不同,这又验证了每一个类的实现功能 是不同的,而类与类这间的调用则是用NEW关键字,这个你应该会吧,继承,多态我就不用说了

main与类没有多关系,也就是类与方法的关系,说了这么多,希望对你有帮助啊

呵呵!

是的,一定要有main函数。

java应用程序是要main(),而且只能在与文件同名的类下面出现一个main()。

但是java小程序applet,因为是镶嵌在htm里面的一段代码 通过IE内置的java虚拟机运行,不需要main()。classpath只是告诉系统,要从什么样的路径来寻找编译器javac和解释器java。因为是含有先后顺序的在安有多种类似软件的时候最好把java安装目录下的\bin放在classpath最前面,系统的classpath跟编的java程序没有关系,不过javac有一个函数-classpath跟那个有关 默认是""<--代表当前目录。

打开cmd后cd到程序所在目录,可以用

//javac java 来对当前目录的所有程序进行编译。

public class GetSum

{

public static int getSum(int start,int end)

{

int sum = 0; //初始化应该放在循环外,不然每次循环都会归零

for(int i=start; i<end; i++)

//如果这里用<end,最后的和不包括end。如果想包括end,需要用<=

{

sum += i;

}

return sum;

}

public static void main(String[] args)

{

Systemoutprintln(getSum(5,10));

}

}

在javalang包中有个public final Math类,类中函数如下

static double abs(double a)

返回 double 值的绝对值。

static float abs(float a)

返回 float 值的绝对值。

static int abs(int a)

返回 int 值的绝对值。

static long abs(long a)

返回 long 值的绝对值。

static double acos(double a)

返回一个值的反余弦;返回的角度范围在 00 到 pi 之间。

static double asin(double a)

返回一个值的反正弦;返回的角度范围在 -pi/2 到 pi/2 之间。

static double atan(double a)

返回一个值的反正切;返回的角度范围在 -pi/2 到 pi/2 之间。

static double atan2(double y, double x)

将矩形坐标 (x, y) 转换成极坐标 (r, theta),返回所得角 theta。

static double cbrt(double a)

返回 double 值的立方根。

static double ceil(double a)

返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数。

static double copySign(double magnitude, double sign)

返回带有第二个浮点参数符号的第一个浮点参数。

static float copySign(float magnitude, float sign)

返回带有第二个浮点参数符号的第一个浮点参数。

static double cos(double a)

返回角的三角余弦。

static double cosh(double x)

返回 double 值的双曲线余弦。

static double exp(double a)

返回欧拉数 e 的 double 次幂的值。

static double expm1(double x)

返回 ex -1。

static double floor(double a)

返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。

static int getExponent(double d)

返回 double 表示形式中使用的无偏指数。

static int getExponent(float f)

返回 float 表示形式中使用的无偏指数。

static double hypot(double x, double y)

返回 sqrt(x2 +y2),没有中间溢出或下溢。

static double IEEEremainder(double f1, double f2)

按照 IEEE 754 标准的规定,对两个参数进行余数运算。

static double log(double a)

返回 double 值的自然对数(底数是 e)。

static double log10(double a)

返回 double 值的底数为 10 的对数。

static double log1p(double x)

返回参数与 1 之和的自然对数。

static double max(double a, double b)

返回两个 double 值中较大的一个。

static float max(float a, float b)

返回两个 float 值中较大的一个。

static int max(int a, int b)

返回两个 int 值中较大的一个。

static long max(long a, long b)

返回两个 long 值中较大的一个。

static double min(double a, double b)

返回两个 double 值中较小的一个。

static float min(float a, float b)

返回两个 float 值中较小的一个。

static int min(int a, int b)

返回两个 int 值中较小的一个。

static long min(long a, long b)

返回两个 long 值中较小的一个。

static double nextAfter(double start, double direction)

返回第一个参数和第二个参数之间与第一个参数相邻的浮点数。

static float nextAfter(float start, double direction)

返回第一个参数和第二个参数之间与第一个参数相邻的浮点数。

static double nextUp(double d)

返回 d 和正无穷大之间与 d 相邻的浮点值。

static float nextUp(float f)

返回 f 和正无穷大之间与 f 相邻的浮点值。

static double pow(double a, double b)

返回第一个参数的第二个参数次幂的值。

static double random()

返回带正号的 double 值,该值大于等于 00 且小于 10。

static double rint(double a)

返回最接近参数并等于某一整数的 double 值。

static long round(double a)

返回最接近参数的 long。

static int round(float a)

返回最接近参数的 int。

static double scalb(double d, int scaleFactor)

返回 d × 2scaleFactor,其舍入方式如同将一个正确舍入的浮点值乘以 double 值集合中的一个值。

static float scalb(float f, int scaleFactor)

返回 f × 2scaleFactor,其舍入方式如同将一个正确舍入的浮点值乘以 float 值集合中的一个值。

static double signum(double d)

返回参数的符号函数;如果参数为 0,则返回 0;如果参数大于 0,则返回 10;如果参数小于 0,则返回 -10。

static float signum(float f)

返回参数的符号函数;如果参数为 0,则返回 0;如果参数大于 0,则返回 10;如果参数小于 0,则返回 -10。

static double sin(double a)

返回角的三角正弦。

static double sinh(double x)

返回 double 值的双曲线正弦。

static double sqrt(double a)

返回正确舍入的 double 值的正平方根。

static double tan(double a)

返回角的三角正切。

static double tanh(double x)

返回 double 值的双曲线余弦。

static double toDegrees(double angrad)

将用弧度表示的角转换为近似相等的用角度表示的角。

static double toRadians(double angdeg)

将用角度表示的角转换为近似相等的用弧度表示的角。

static double ulp(double d)

返回参数的 ulp 大小。

static float ulp(float f)

返回参数的 ulp 大小。

shiyan_er_one要声明成public 。

Animal类不需要写成内部类的形式,把它提到外面来即可,像这样:

public class shiyan_er_one

{

public static void main(String[] args)

{

Animal A=new Animal();

Avoic();

}

}

class Animal

{

void voic()

{ Systemoutprintln("The voice of animal is: \n");}

}

方法二,其余代码不改变,主方法中这样写:

public static void main(String[] args)

{

shiyan_er_one shi=new shiyan_er_one();

Animal A=shinew Animal();

Avoic();

}

方法三,把Animal定义成静态内部类:

static class Animal

{

………………

}

// 包:import javautilScanner;

public static void main(String[] args) {

Scanner input = new Scanner(Systemin); // 控制台输出语句

boolean sign = false; // 布尔标记,用来判断输入数是否合格

while (sign == false) { // while 循环

Systemoutprint("请输入N:"); // 提示输入

int n = inputnextInt(); // 输入

sign = whatever(n); // 调用方法

}

}

/

我也不知道这个算法是什么名字,随便起

@param n

@return 返回数字是否合格,大于1则合格

/

public static boolean whatever(int n) {

boolean sign = false; // 布尔标记,用来判断输入数是否合格

int result = 1; // 记录结果的变量

StringBuffer buff = new StringBuffer(); // 在 用来记录算式的变量

if (n > 1) { // 如果参数 N 大于 1 则开始计算

// 以下是算法开始

for (int i = 1; i < n; i++) {

if (i % 2 == 1) {

// 单数减

result -= i + 1;

buffappend(i + " - "); // 字符拼接

} else {

// 双数加

result += i + 1;

buffappend(i + " + "); // 字符拼接

}

if (i == n - 1) { // 如果循环到结尾了,把 = 加上。

buffappend(i + 1 + " = ");

}

}

Systemoutprintln(bufftoString() + result);

sign = true;

} else { // 否则提示,返回 false 重新输入

Systemoutprintln("N 不得小于或等于 1");

}

return sign;

}

运行结果:

请输入N:8

1 - 2 + 3 - 4 + 5 - 6 + 7 - 8 = -4

请输入N:9

1 - 2 + 3 - 4 + 5 - 6 + 7 - 8 + 9 = 5

最后:

希望能帮到你,有什么问题可以Hi我。

以上就是关于Java中main函数全部的内容,包括:Java中main函数、java程序是不是一定要有main函数、关于java 函数调用 简单程序 为什么程序无法 运行 求指导改正等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9273135.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存