自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 Android12 framework增加JNI

Android12 framework层增加JNI功能函数

2022-08-10 13:47:17 865 1

原创 基于Android12 AOSP和Pixel4,针对framework模块修改源代码的部分编译和刷机流程

部分编译前最好备份一份干净的Android12代码一、部分编译:(针对修改framework模块中的代码)source ./build/envsetup.sh(在Android12代码的根目录下)lunch #(找到pixel4对应 aosp. flore -userdebug 输入对应的数字:28)make framework-minus-apex(进行部分编译)根据framework/base/目录下Android.bp中的提示:通过stem属性得知编译出来的模块还叫framework

2021-12-27 19:19:39 4386 1

原创 Liskov可替换原则(LSP)

Behavioral subtyping(行为子类型)如果B是A的子类型,则有两条隐含语义:1.任意的B都是A;2.A能做的事,B也都能做;如果满足这两条,则称B为A的行为子类型。行为子类型形式化的定义:1.父类型的特征,子类型也有;2.父类型能做的事,子类型也能做,并且子类型不能比父类型做得更差;3.父类型不能做的事,子类型可能能做。这两个对行为子类型的定义是等价的。行为子类型能够满足子类型多态的要求,既客户端可以用统一的方式处理不同类型的对象。Liskov可替换原则(LSP)1.

2020-06-06 22:28:23 303

原创 HIT2020春季学期软件构造3-5:ADT和OOP中的等价性(知识点整理)

1.Immutable类型的等价性策略根据值判断相等,因为Immutable类型的数据的值定了,就不能改变值。AF等价性如果两个对象AF映射到同样的结果,则认为是等价的。观察者等价性使用observer方法判断相等,如果两个对象调用任何相同的操作,都会得到相同的结果,则认为是等价的。由于用户是看不见AF的,因此对于Immutable 类型的对象采取观察者等价性较为合理。2.mutable类型的等价性策略观察者等价性在不改变状态的情况下,使用observer方法判断相等,如果两个对象调用

2020-06-06 18:49:51 238

原创 JAVA:对象序列化与解序列化

1.序列化的文件序列化的文件一般难以阅读,但是相对于纯文本文件更容易让程序恢复状态,并且比较安全。2.序列化对象时发生对象的两种属性:状态和行为,行为存在于整个类层面,而状态存在于个别对象中,并且就是这些实例变量的值使同一类的对象拥有了特殊性。当对象被序列化时,序列化的对象保存了实例变量的值,因此,解序列化时能够保证还原的对象与之前被序列化的对象一模一样。并且被该对象引用的所有对象都会被序列化。只有实现Serializable的类,才能被序列化序列化的过程://1.创建出FileOutput

2020-06-06 17:28:12 156

原创 HIT2020春季学期软件构造Lab1

1 实验目标概述本次实验通过求解三个问题,训练基本 Java 编程技能,能够利用 Java OO 开发基本的功能模块,能够阅读理解已有代码框架并根据功能需求补全代码,能够为所开发的代码编写基本的测试程序并完成测试,初步保证所开发代码的正确性。另一方面,利用 Git 作为代码配置管理的工具,学会 Git 的基本使用方法。 基本的 Java OO 编程 基于 Eclipse IDE 进行 Java 编程 基于 JUnit 的测试2 实验环境配置(1) 请阅读 http://web.mit.ed

2020-05-17 19:25:41 444

原创 HIT2020春季学期软件构造Lab2

1 实验目标概述本次实验训练抽象数据类型(ADT)的设计、规约、测试,并使用面向对象编程(OOP)技术实现 ADT。具体来说:针对给定的应用问题,从问题描述中识别所需的 ADT;设计 ADT 规约(pre-condition、post-condition)并评估规约的质量;根据 ADT 的规约设计测试用例;ADT 的泛型化;根据规约设计 ADT 的多种不同的实现;针对每种实现,设计其表示(representation)、表示不变性(rep invariant)、抽象过程(abstractio

2020-05-17 19:16:11 475

原创 HIT2020春季学期软件构造Lab3

1 实验目标概述本次实验覆盖课程第 3、4、5 章的内容,目标是编写具有可复用性和可维护性的软件,主要使用以下软件构造技术:子类型、泛型、多态、重写、重载继承、代理、组合常见的 OO 设计模式语法驱动的编程、正则表达式基于状态的编程API 设计、API 复用本次实验给定了五个具体应用(高铁车次管理、航班管理、操作系统进程管理、大学课表管理、学习活动日程管理),学生不是直接针对五个应用分别编程实现,而是通过 ADT 和泛型等抽象技术,开发一套可复用的 ADT 及其实现,充分考虑这些应用之间的相

2020-05-17 17:29:42 489

原创 Swing的简单应用

布局管理器(Layout Managers)作用布局管理器是个与特定组件相关联的Java对象,在大多数情况下是背景组件。用来控制所关联组件上携带的其他组件(在Swing中,几乎所有组件都能够安置其他组件),若JFrame上带有JPanel,JPanel上带有JButton,则JFrame的布局管理器控制JPanel的大小和位置,JPanel控制JButton的大小和位置,而JButton上没有其他组件,就不需要布局管理器,JFrame控制不了按钮。不同的布局管理器有不同的放置策略,有的布局管理器会遵

2020-05-17 16:45:25 442

原创 在GUI上绘图

在GUI上添加东西的3种方法:1.在frame上放置widget:frame.getContentPane().add(widget);2.在widget上绘制2D图形;3.在widget上绘制JPEG图。2与3均使用graphics对象来绘制图;

2020-05-17 11:33:48 1371

原创 图形用户接口GUI的简介与简单应用

GUI若要创建别人会使用的应用程序,就必须用到GUI,而不是通过命令行,命令行程序没有适应性,也不好用。创建一个简单的GUI1.创建frameJFrame是个代表屏幕上window的对象,可以把widget加到上面。JFrame frame = new JFrame();2.创建widget最常用的widget有:JButton、JRadioButton、JCheckBox、JLable、JList、JTable等,都在javax.swing这个包中。JButton button = ne

2020-05-17 11:18:18 732

原创 使用函数库(JAVA API)

在Java的API中,类是被包装在包中。要使用API的类,必须知道它被放在哪个包中。包1.包可以帮助组织项目或函数库,相对于一大堆零散的类,以功能来组织比较好;2.包可以制造出名称空间,以便错开相同名称的类;3.包可以通过限制同一包之间的类才能相互存取以维护安全性。javax开头的包的由来:在Java的早期两个版本中(1.02与1.1),所有随附于Java的类(即standard ...

2020-04-20 15:42:51 621 1

原创 Java中List与Set的简介

1. List集合1.1 List集合简介List集合是有序的,Developer可对其中每个元素的插入位置进行精确地控制,可以通过索引来访问元素,遍历元素。1.1.1 ArrayList1.1.2 LinkedList1.2List 集合常用方法2.Set 集合2.1Set 集合简介2.2Set 集合常用方法...

2020-04-19 21:01:47 511

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除