簡單java類開發一般原則:
- 類名稱必須有意義,再怎么說,要讓人家看的明白吧
- 類之中所有屬性必須使用private封裝,並提供setter,getter方法
- 類之中可以有多個構造方法,但是必須保留有一個無參數構造方法
- 類之中不允許出現任何輸出語句,所有輸出必須交給被調用處
- 類之中需要有一個可以取得對象完整信息的方法,一般叫做getInfo(),返回String型數據
class Book { private String name; private int price; private int num; public Book() { } public Book(String na ,int pri, int n) { name = na; price = pri; num = n; } public book() { } public void setName(String n) { name = n; } public void setPrice(int p) { price = p; } public void setNum(int n) { num = n; } public String getName() { return name; } public int getPrice() { return price; } public int getNum() { return num; } public int getMonney(int price, int num) { return price*num; } public String getinfo() { return "書名:"+name+"\n"+ "單價:"+price+"\n"+ "數量:"+num+"\n"; } } public class test2 { public static void main(String args[]) { Book monney = new Book("老人與海",20,3); System.out.println(monney.getinfo()); } }
一對多關系:
實例1:
省份:
省份ID : NUMBER <pk>
省份名字: VARCHAR(50)
城市:
城市ID : NUMBER<pk>
省份ID:NUMBER<fk>
城市名稱:VARCHAR(50)
要求可以通過一個省份找到所有的城市信息,通過一個城市可以找到它對應的省份信息
//setter,getter,無參構造省略 class Province { private int pid; private String pname; private City city []; public Province(int pid, String pname) { this.pid = pid; this.pname = pname; } public String getInfo() { return "省份ID:"+this.pid+"\n"+ "省份名字"+this.pname; } public void setCity(City city []) { this.city = city; } public City [] getCity() { return this.city; } } class City { private int cid; private String cname; private Province province; public City(int cid, String cname) { this.cid = cid; this.cname = cname; } public String getInfo() { return "城市ID:"+ this.cid+"城市名字:"+this.cname; } public void setProvince(Province province) { this.province = province; } public Province getProvince() { return this.province; } } public class test1 { public static void main(String args[]) { //設置獨立對象 Province p = new Province(1,"重慶"); City c_1 = new City(001,"渝中區"); City c_2 = new City(002,"南岸區"); //設置相關關系 c_1.setProvince(p);//一個城市屬於一個省份 c_2.setProvince(p); p.setCity(new City [] {c_1,c_2}); //獲取數據 for (int x=0 ;x<p.getCity().length;x++) { System.out.println(p.getCity()[x].getInfo()); } System.out.println(c_1.getProvince().getInfo()); System.out.println(c_2.getProvince().getInfo()); } } //輸出 城市ID:1城市名字:渝中區 城市ID:2城市名字:南岸區 省份ID:1 省份名字重慶 省份ID:1 省份名字重慶
實例2:
//setter,getter,無參構造省略 class Item { private int iid; private String iname; private String note; private Subitem subitem []; public Item(int iid, String iname,String note) { this.iid = iid; this.iname = iname; this.note = note; } public String getInfo() { return "類型ID:"+this.iid+"\n"+ "類型名字"+this.iname+"\n"+ "描述"+this.note; } public void setSubitem (Subitem subitem []) { this.subitem = subitem; } public Subitem [] getSubitem() { return this.subitem; } } class Subitem { private int subid; private String subname; private String note; private Item item; private Product product []; public Subitem(int subid, String subname,String note) { this.subid = subid; this.subname = subname; this.note = note; } public String getInfo() { return "子類型ID:" +this.subid+"\n"+ "子類型名字:"+this.subname+"\n"+ "描述"+this.note; } public void setItem(Item item) { this.item = item; } public Item getItem() { return this.item; } public void setProduct(Product product []) { this.product = product; } public Product [] getProduct() { return this.product; } } class Product { private int pid; private String pname; private int price; private Subitem subitem; public Product(int pid, String pname, int price) { this.pid = pid; this.pname = pname; this.price = price; } public String getInfo() { return "商品ID"+this.pid+"\n"+ "商品名稱"+this.pname+"\n"+ "價格"+this.price; } public void setSubitem(Subitem subitem) { this.subitem = subitem; } public Subitem getSubitem() { return this.subitem; } } public class test1 { public static void main(String args[]) { //設置獨立對象 Item i = new Item(1,"食品類","吃的"); Subitem sub1 = new Subitem(001,"肉類","豬肉"); Subitem sub2= new Subitem(002,"蔬菜類","白菜"); Subitem sub3 = new Subitem(003,"堅果類","瓜子"); Product p1 = new Product(0001,"肥肉",20); Product p2= new Product(0002,"大白菜",5); Product p3 = new Product(0003,"甜瓜子",12); //設置相關關系 sub1.setItem(i);//一個城市屬於一個省份 sub2.setItem(i); sub3.setItem(i); i.setSubitem(new Subitem [] {sub1,sub2,sub3}); sub1.setProduct(new Product [] {p1}); sub2.setProduct(new Product [] {p2}); sub3.setProduct(new Product [] {p3}); p1.setSubitem(sub1); p2.setSubitem(sub2); p3.setSubitem(sub3); //獲取數據 for (int x=0 ;x<i.getSubitem().length;x++) { System.out.println(i.getSubitem()[x].getInfo()); } System.out.println(p3.getSubitem().getItem().getInfo()); } }