封装 覆盖

一个标准的类需要定义私有属性 无参构造方法 有参构造方法 get and set方法

private static是合法的,且有着其独到的用处:为静态方法提供私有静态属性。public static常用的是为该类提供对外暴露即可以被类名直接调用的静态常量。

封装的步骤:
1.所有属性私有化,使用private关键字进行修饰,private表示私有的,修饰的所有数据只能在本类中访问。
2.对外提供简单的操作入口。
提供两个公开的方法,修改:set与读取:get方法。
setter and getter 方法没有static关键字

覆盖:

1.什么时候方法要进行重写?..
如果父类中 的方法已经无法满足当前子类的业务需求,需要将父类中的方法进行重新写一遍。
2,子类如果重写父类中的方法之后,子类对象一定调用的是重写之后的方法.
3.发生方法覆盖的条件:
第一:发生在具有继承关系的两个类之间
第二:必须具有相同的方法名,相同的返回值类型,相同的参数列表,
第三:重写的方法不能比被重写的方法拥有更低的访问权限.
第四:重写的方法不能比被重写的方法抛出更宽泛的异常
第五:私有的方法不能被覆盖.
第六:构造方法无法被覆盖。因为构造方法无法被继承。
第七:静态的方法不存在覆盖.
第八:覆盖指的是成员方法,和成员变量无关。
4.继承最基本的作用:代码重用。继承 最重要的作用:方法可以重写。

在 Allegro 中导入网表时,若希望使用新封装而不被旧封装覆盖,需通过合理设置封装路径与优先级来实现。以下是具体操作方法: 1. **设置封装库路径** 在 PCB 设计环境中,通过 `Setup > User Preferences Editor` 进入用户偏好设置界面,在 `Paths` 类别下配置 `psm_path` 和 `pad_path`,确保新封装所在的文件夹优先于旧封装所在的库路径[^2]。 2. **指定封装调用顺序** 在导入网表前,可以通过 `Logic > Assign Package` 或者直接编辑 `.mdd` 文件(模块定义文件),明确指定每个元器件应使用的封装名称。这样即使存在同名封装,Allegro 也会优先调用指定路径下的新封装[^1]。 3. **使用独立的封装库** 将新封装放置在一个独立的目录中,并在项目开始前将该目录添加到封装路径列表的最前端。这样可以保证在导入网表时,系统优先查找并应用这些新封装[^2]。 4. **避免封装名称冲突** 如果可能,为新封装命名时尽量避免与已有封装重名。例如可以在封装名后添加版本号或特定标识,以确保其唯一性。这有助于防止因名称重复而导致的封装误替换问题[^1]。 5. **检查并更新封装映射文件** 在导入网表过程中,Allegro 会参考 `package symbol map file`(封装符号映射文件)进行封装匹配。可在 `Logic > Netlist > Import` 对话框中选择合适的映射文件,并确认其中是否已正确配置新封装路径。如果未配置,可手动编辑该文件,加入新的封装映射关系[^1]。 6. **使用封装导出/导入功能** 若已有 PCB 文件中包含所需的新封装,可通过 `File > Export > Library` 功能将封装导出为独立库文件,再在目标 PCB 文件中导入该库,从而确保新封装不会被旧库中的同名封装覆盖[^2]。 ### 示例代码片段:修改 `.mdd` 文件以指定封装 ```plaintext [Component] Name = U1 Package = my_new_package_v2 ``` 上述配置可确保在导入网表时,U1 组件使用名为 `my_new_package_v2` 的新封装,而不是默认搜索路径下的旧封装
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值