简要关系
一个工程相当于一个软件,由一些功能模块组成;
包是功能模块,集成了一些功能类;
类是功能,由一些方法组成。public类名需和其.java文件名相同,只有public类中的main方法是程序入口。调用其他类中的没有static修饰的方法时,先生成一个类实例对象,再使用类中的方法;
方法是类功能的具体实现过程。
参见 Java中工程、包、类介绍
包含形式
创建一个文件夹,作为工程
工程中创建文件夹作为包
包中放置可被调用的字节码.class类文件
调用
写好需要被调用的.java文件,编译后,把生成的.class类文件放在包中
package Test;
public class Max
{
public static int max(int a,int b)
{
int c;
if(a>b)
c=a;
else
c=b;
return c;
}
}
写好(含有程序入口)直接运行的.java文件,把编译后生成的.class类,放在包外作为程序入口
import Test.Max; //引入包Test中的Max类
public class Run
{
public static void main(String[] args)
{
int a=1;
int b=2;
System.out.println(Max.max(a,b));
}
}
运行包外的(含程序入口的)类,运行成功
方法的创建和调用
同一个类内
public class Run
{
public static int max(int a,int b) //创建一个方法
{
int c;
if(a>b)
c=a;
else
c=b;
return c;
}
public static void main(String[] args)
{
int a=1;
int b=2;
System.out.println(max(a,b)); //调用方法,格式:方法名(参数)
}
}
不同的类
import Test.Max; //引入包Test中的Max类
public class Run
{
public static void main(String[] args)
{
int a=1;
int b=2;
System.out.println(Max.max(a,b)); //格式:类名.方法名(参数)
}
}
关于类和对象的实例
以上被调用的其他类的方法都有static (静态的) 修饰,而静态方法可以通过类来调用,故没有用到类的实例对象,但其余的方法得创建对象来调用。
“什么是类?
- 类是具有相同的属性和功能的事物的抽象的集合,在面向对象程序设计中,人们把一类事物的静态属性和动态可以执行的操作组合在一起就得到类这个概念。
- 类是个抽象的概念,用来模拟一类事物,一旦定义了一个类,这个类就永远存在。
比如:人,人有张三、李四、王五,他们都有身高,体重等相同的属性,他们都具有走路,吃饭,工作等这些相同的,可动态执行的操作,所以可以定义“人类”这样一个类来包含他们相同的属性和功能。
什么是对象,类和对象之间是什么关系,怎样创建一个对象? - 对象是类的一个个体,是具体的,实实在在存在的事物,它有自己的生命周期,由类可以创建出对象,对象也会消亡。
- 类一旦被建立后,就可以用这个类创建出任意个对象,然后去操作这些对象,类是抽象的,对象是具体的。
- 对象也叫实例,是一个真实的实体。
关系: 1. 如果把一个对象比作是实实在在存在一辆汽车,那么类就是这辆汽车的设计图纸,当然通过设计图纸(类)还可以制造第二辆,第三辆这样的汽车(对象)。 - 如上,通过Person类可以创建出一个叫小明的对象,也可以创建出另一个叫“阿黄”的对象。
语法
定义一个类
[修饰符] class Person //定义类Person
{ string name; //类成员变量声明
string age;
string career;
public void introduction() { //类方法声明
}
}
然后可以再定义一个对象,比如new 一个小明
Person xiaoMing = new Person();
创建一个对象
格式一:声明并实例化对象
类名称 对象名称 = new 类名称 () ;
person xiaoMing = new person();
格式二:先声明对象,然后实例化对象:
类名称.对象名称 ;
对象名称 = new 类名称 () ;
person xiaoMing;
xiaoMing = new person();
类与对象的实例:
public class Person //定义类Person
{
string name; //类成员变量声明
string age;
string career;
public void introduction() //类方法声明
{
System.out.println("名字:"+name+",年龄:"+age+"岁"+"职业:"+career);
}
}
public class TestDemo //含有程序入口main方法的主类
{
public static void main(String args[])
{
Person xiaoMing = new person(); //声明并实例化对象
xiaoMing.name = "小明"; //操作类成员变量(属性内容) 格式:类名字.成员变量名
xiaoMing.age = 19;
xiaoMing.career = "学生";
xiaoMing.introduction(); //调用类方法(功能) 格式:类名字.方法名
}
}
测试结果:
名字:xiaoMing
年龄:19岁
职业:学生
参见:JAVA 类和对象的实例