关于java的方法结构示例

public class Demo2 {
    class Person{  //定义类型

        private String name;
        private String age;
        private String sex;
        private  String xueHao;
        private  String ID;//私有数据成员
        private  String habit;
        public Person(){
        }
        public Person(String name,String age,String sex,String xueHao,String ID,String habit){
            this.name=name;
            this.age=age;
            this.sex=sex;
            this.xueHao=xueHao;
            this.ID=ID;
            this.habit=habit;
        }
        public String getName(){
            return name;     //返回姓名
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getAge() {
            return age;   //返回年龄
        }

        public void setAge(String age) {
            this.age = age;
        }

        public String getSex() {
            return sex;    //返回性别
        }

        public void setSex(String sex) {
            this.sex = sex;
        }

        public String getXueHao() {
            return xueHao;   //返回学号
        }

        public void setXueHao(String xueHao) {
            this.xueHao = xueHao;
        }

        public String getID() {
            return ID;   //返回ID
        }

        public void setID(String ID) {
            this.ID = ID;
        }
        public String getHabit(){
            return habit;   //返回爱好
        }
        public void setHabit(){
            this.habit=habit;
        }
    }

    public static void main(String[] args) {
        Demo2 Man = new Demo2();
        Person man = Man.new Person("小坤", "20", "男", "547547547547", "547547547547","唱,跳,rap,篮球");
        man.setName("小鸡"); //修改姓名
        System.out.println("姓名:"+man.getName());
        System.out.println("年龄:"+man.getAge());
        System.out.println("性别:"+man.getSex());
        System.out.println("学号:"+man.getXueHao());
        System.out.println("身份证号:"+man.getID());
        System.out.println("爱好:"+man.getHabit());

    }
}

编译为:

姓名:小鸡
年龄:20
性别:男
学号:547547547547
身份证号:547547547547
爱好:唱,跳,rap,篮球

  • 26
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
模板方法模式(Template Method Pattern)是一种行为型设计模式,它定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 以下是一个使用模板方法模式的 Java 示例: ``` abstract class Game { abstract void initialize(); abstract void startPlay(); abstract void endPlay(); // 模板方法 public final void play(){ // 初始化游戏 initialize(); // 开始游戏 startPlay(); // 结束游戏 endPlay(); } } class Cricket extends Game { @Override void endPlay() { System.out.println("Cricket Game Finished!"); } @Override void initialize() { System.out.println("Cricket Game Initialized! Start playing."); } @Override void startPlay() { System.out.println("Cricket Game Started. Enjoy the game!"); } } class Football extends Game { @Override void endPlay() { System.out.println("Football Game Finished!"); } @Override void initialize() { System.out.println("Football Game Initialized! Start playing."); } @Override void startPlay() { System.out.println("Football Game Started. Enjoy the game!"); } } public class TemplatePatternDemo { public static void main(String[] args) { Game game = new Cricket(); game.play(); System.out.println(); game = new Football(); game.play(); } } ``` 在上面的示例中,我们定义了一个抽象类 `Game`,它有三个抽象方法 `initialize()`、`startPlay()` 和 `endPlay()`。这些方法被称为基本方法,由子类实现。 `Game` 类还有一个模板方法 `play()`,该方法定义了游戏的骨架,即游戏的初始化、开始和结束。这个方法是 `final` 类型的,因此子类不能覆盖它。 我们定义了两个子类 `Cricket` 和 `Football`,它们实现了基本方法。在 `TemplatePatternDemo` 类中,我们创建了一个 `Cricket` 对象和一个 `Football` 对象,并调用它们的 `play()` 方法。由于 `play()` 方法是模板方法,因此无论是 `Cricket` 还是 `Football`,它们都会按照相同的顺序执行游戏的初始化、开始和结束,但它们的具体实现是不同的。 运行上面的程序,你将会得到如下输出: ``` Cricket Game Initialized! Start playing. Cricket Game Started. Enjoy the game! Cricket Game Finished! Football Game Initialized! Start playing. Football Game Started. Enjoy the game! Football Game Finished! ``` 这就是模板方法模式的一个简单示例

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值