关于public定义方法和类的作用,以及包和import语句

1、首先了解一下,public static void main(string[] args),这是java程序的入口地址,java虚拟机运行程序的时候首先找的就是main方法.跟C语言里面的main()函数的作用是一样的.只有有main()方法的java程序才能够被java虚拟机欲行,可理解为规定的格式
对于里面的参数及修饰符
public:表示的这个程序的访问权限,表示的是任何的场合可以被引用,这样java虚拟机就可以找到main()方法,从而来运行javac程序
static:表明方法是静态的,不依赖类的对象的,是属于类的,在类加载的时候main()方法也随着加载到内存中去
void:main()方法是不需要返回值的
main:约定俗成,规定的

String[] args:从控制台接收参数

2、包

首先定义了一个类,Student

    package liushuo.surena;
public class Student               //
{
    int number;
Student(int n){
number=n;
}
void speak(){
     System.out.println("Student类的包名是liushuo.20151026,我的学号是"+number);
}
}

再定义主类

package liushuo.surena;
public class p88
{
public static void main(String[] args) 
{
Student stu=new Student(10201);
stu.speak();
System.out.println("主类的包名也为liushuo.20151026");
System.out.println("Hello World!");
}
}

两个类都声明了包,且位置一样,但是调用的时候

D:\liushuo\surena>javac *.java
D:\liushuo\surena>cd..
D:\liushuo>cd,,
D:\>java liushuo.surena.p88  //最后调用的时候,跑到了上两级目录,因为声明了包名,是有包名的主类,就相当于一层一层的找到这个主类的位置。

3、import语句的使用

        主要的作用就是解决,一个类想要使用的那个类,却不在一个包里面的问题。

(1)比如我们来定义一个类,这个类表示一个三角形,实现三种方法。

package liushuo.surena;               //这个地方只需要包的地址就行了
public class Triangle  
{
    double sideA,sideB,sideC;
boolean isTriangle;
public Triangle(double a,double b,double c){            //第一个方法,根据输入的三边参数判断该三边是否能构成三角形
sideA=a;
sideB=b;
sideC=c;

if (a+b>c&&a+c>b&&b+c>a)
{
isTriangle=true;
}
else{
isTriangle=false;
}
  }
    public void 计算面积(){                             //第二个方法,如果是三角形,计算三角形的面积
if (isTriangle)
{
double p=(sideA+sideB+sideC)/2.0;
            double area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
System.out.println("该三角形的面积为"+area);
}
else{
System.out.println("不是一个三角形,不能计算面积");
}
}  
public void 修改三边(double a,double b,double c){  //第三个方法,重新设定三边
sideA=a;
sideB=b;
sideC=c;
if (a+b>c&&a+c>b&&b+c>a)
{
isTriangle=true;
}
else{
isTriangle=false;
}
}
}

(2)再定义一个主类,这个类用来import三角形这个类,使用这个类。

import liushuo.surena.Triangle;        //导入并使用定义好的类
public class p92                     //定义新类
{
public static void main(String[] args) 
{
Triangle tri=new Triangle(3,4,5);
tri.计算面积();
tri.修改三边(7,8,9);
tri.计算面积();
}
}

(3)定义好了,主类如何调用呢,第一,如果想实现随意调用,即主类不管在什么路径,都可以调用Triangle这个类的话,就只能修改环境标量,加入类的路径。

        如在命令行里卖弄执行以下命令,set classpath =c\jdk1.6\jre\bin\re,jar;,;d:(即我的包位于d盘根目录下)

        第二,以上命令行中的“.;”,也就是”点 分号“,表示的是加载应用程序的无名包类,也就是在主类目录下的类。那么也就说明,如果你不想修改环境变量,你可以在主类下建立和包相对应的子目录结构。

        在初学时期,一般不需要修改环境变量,即采用第二种方式来调用包。

        


  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值