博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 学习3。类 和 继承
阅读量:5251 次
发布时间:2019-06-14

本文共 2758 字,大约阅读时间需要 9 分钟。

经测试,成员变量的初始化顺序是,1.定义时候给的值-》2.构造函数中赋值。 //学习了类和继承,以及 派生类的构造以及 方法覆盖。 public static void Study_class()    {        //goods基类是否应该是一个虚类.其实并不是固定的.看场景,如果把goods基类看作现实物品的基类,那么就应该是虚类.因为不存在一个概念的物品.        //但如果把goods 看作是某物品的基本信息类,那么可以是普通类.代表一个物品的基础信息.        //下面就是作为基类创建.        List
mygoods=new ArrayList
(); goods book_cshart=new goods(0, "c#", 3.1f, enum_goods_type.book); goods book_javaGoods=new goods(1, "java", 4.5f, enum_goods_type.book); goods fruit_apple=new goods(3,"apple",1f,enum_goods_type.fruit); goods fruit_banana=new goods(4,"banana",0.9f,enum_goods_type.fruit); mygoods.add(book_cshart); mygoods.add(book_javaGoods); mygoods.add(fruit_apple); mygoods.add(fruit_banana); for(int i=0;i
mygoods2=new ArrayList
(); mygoods2.add(book_cshart); mygoods2.add(book_javaGoods); mygoods2.add(fruit_apple); mygoods2.add(fruit_banana); for(int i=0;i

 

 

基类:

package com.linson;import java.text.DecimalFormat;enum enum_goods_type{    book,    fruit;}public class goods {    public int id;    public String name;    public float price;    public enum_goods_type gtype;        public goods(int _id,String _name,float _price,enum_goods_type _type)    {        id=_id;        name=_name;        price=_price;        gtype=_type;    }        public String MyBaseInfo()    {        DecimalFormat dt=new DecimalFormat();        dt.applyLocalizedPattern("0.00");        String priceformat=dt.format(price);        return "ID:"+id+". Name:"+name+". price:"+priceformat+". type:"+gtype.name();    }        public String MySpecialInfo()    {        return "";    }}

 

book 

package com.linson;import java.util.Date;public class Book extends goods{    public String writer;    public Date publicDate;        public Book(int _id,String _name,float _price,String _writer,Date _publicdate)    {        super(_id, _name, _price, enum_goods_type.book);        writer=_writer;        publicDate=_publicdate;    }        @Override    public String MySpecialInfo()    {        String retString=MyBaseInfo();                retString=retString+" .Writer:"+writer+".";        return retString;    }}

 

 

fruit:

 

package com.linson;public class Fruit extends goods{    public String Color;        public Fruit(int _id,String _name,float _price,String _color)    {        super(_id, _name, _price,com.linson.enum_goods_type.fruit);        Color=_color;    }        @Override    public String MySpecialInfo()    {        String retString=MyBaseInfo();                retString=retString+" .Color:"+Color+".";        return retString;    }}

 

转载于:https://www.cnblogs.com/lsfv/p/9554017.html

你可能感兴趣的文章
禁止vs2015 debug时跳转到STL中 Not step into
查看>>
SharePoint 2013管理中心里【管理服务器上的服务】不见了
查看>>
JavaScript事件
查看>>
初识python
查看>>
工作技能掌握浅记
查看>>
Ajax
查看>>
System Generator实现Xilinx FPGA流水灯实验
查看>>
位操作的趣味应用
查看>>
python中列表的常用操作增删改查
查看>>
学习随笔1
查看>>
[翻译]SQL Server等待事件—THREADPOOL
查看>>
倒排索引
查看>>
解决Cordova安装Cannot find module 'bplist-parser'问题
查看>>
福大软工 · 第八次作业(课堂实战)- 项目UML设计(团队)
查看>>
tomcat 配置JNDI数据源
查看>>
oracle分页查询
查看>>
Chrome developer tool:本人钟爱的 console、Network 功能简谈
查看>>
DemoKit编译过程
查看>>
请问 imgbtn上怎样添加文字呢
查看>>
golang print struct with key
查看>>