目录
百战程序员,全站22050+开发课程+文档 ,学习精选优质好课快人一步!观看视频 快捷键ALT+N

Python全系列 教程

3567个小节阅读:5931.9k

收藏
全部开发者教程

鸿蒙应用开发

C语言快速入门

JAVA全系列 教程

面向对象的程序设计语言

Python全系列 教程

Python3.x版本,未来主流的版本

人工智能 教程

顺势而为,AI创新未来

大厂算法 教程

算法,程序员自我提升必经之路

C++ 教程

一门通用计算机编程语言

微服务 教程

目前业界流行的框架组合

web前端全系列 教程

通向WEB技术世界的钥匙

大数据全系列 教程

站在云端操控万千数据

AIGC全能工具班

A

A A

White Night

阅读(9.1k)
赞(0)

工厂和单例模式结合

image-20211116181840301

设计模式称之为“模式”,就是一些固定的套路。我们很容易用到其他场景上,比如前面讲的工厂模式,我们需要将工厂类定义成“单例”,只需要简单的套用即可实现:

运算结果:

 

实操作业

  1. 如下代码测试对象的浅拷贝、深拷贝,请绘制出内存示意图。

  2. 定义发动机类Motor、底盘类Chassis、座椅类Seat,车辆外壳类Shell,并使用组合关系定义汽车类。其他要求如下:

    定义汽车的run()方法,里面需要调用Motor类的work()方法,也需要调用座椅类Seat的work()方法,也需要调用底盘类Chassis的work()方法

  3. 使用工厂模式、单例模式实现如下需求:

    (1) 电脑工厂类ComputerFactory用于生产电脑Computer。工厂类使用单例模式,也就是说只能有一个工厂对象。

    (2) 工厂类中可以生产各种品牌的电脑:联想、华硕、神舟

    (3) 各种品牌的电脑使用继承实现:

    (4) 父类是Computer类,定义了calculate方法

    (5) 各品牌电脑类需要重写父类的calculate方法

  4. 定义一个Employee雇员类,要求如下:

    (1) 属性有:id、name、salary

    (2) 运算符重载+:实现两个对象相加时,默认返回他们的薪水和

    (3) 构造方法要求:输入name、salary,不输入id。id采用自增的方式,从1000开始自增,第一个新增对象是1001,第二个新增对象是1002。

    (4) 根据salary属性,使用@property设置属性的get和set方法。set方法要求输入:1000-50000范围的数字。

北京市昌平区回龙观镇南店村综合商业楼2楼226室

©2014-2023 百战卓越(北京)科技有限公司 All Rights Reserved.

京ICP备14032124号-2