java命令行语句

1.简单java代码的编译与运行

class New1
{
  private int sno;
  private String name;
  public New1(int s,String n)
  {
  sno=s;
  name=n;
  }
  public void showInfo()
  {
    System.out.println(name);
  }
 
  public static void main(String[] args)
  {
 
  New1 first= new New1(14,"Janie");
  first.showInfo();
  }
}

   编译:

            javac   *.java                                       (编译结束后在同一目录下会出现*.class 的文件)

   运行:

            java  *

java命令行语句_第1张图片


2.在Test中使用到上面的New1(Test与New1在同一包下)

public class Test
{
public static void main(String args[])
{
New1 sec=new New1(14,"Janie");
sec.showInfo();
}
}

如果New1类没有编译,在执行 javac  Test.java 时会对其也进行编译,即同一目录下会出现New1.class 和Test.class


3.在包下的类

package com.xiyou.janie;
public class Student
{
private String name;
private int sno;
public Student (String n,int s)
{
  name=n;
  sno=s;
}
public void changeInfo(String n,int s)
{
  name=n;
  sno=s;
}
public void showInfo()
{
  System.out.println(name+"  "+sno);
  
}
public int getSno()
{
return sno;
}
public String getName()
{
return name;
}

}

Student.java文件在根目录下,直接执行 javac Student.java 编译生成的class文件还是在根目录下,不在com.xiyou.janie下

如何在编译时自动生成包?

javac -d . Student.java 会自动生成包,然后编译产生的.class文件会在包目录下


4.在Test类下使用上面Student类(此时两个类不在同一包下)

import com.xiyou.janie.Student;
public class Test
{
public static void main(String args[])
{
Student sec=new Student("Janie",14);
sec.showInfo();
}
}
如果Student类没有编译,在执行 javac  Test.java 时会出错

java命令行语句_第2张图片

所以要先对Student类进行编译,而且要编译到包目录下

java命令行语句_第3张图片


5.Student.java在e:盘,Test.java 在桌面

  现在两个类都没有编译,Test类里有Student对象,现在编译和运行时要加上环境-classpath




6.打包命令

a.压缩    jar  cvf  *.jar  *.class  **.class 包

   压缩生成的压缩包里有一个配置文件    MANIFEST.MF

b.解压    jar xvf   *.jar

c.使用jar包   java -jar   *.jar

java命令行语句_第4张图片

你可能感兴趣的:(java基础)