- 博客(67)
- 收藏
- 关注
原创 Android Studio 安装-配置-优化
Android Studio是Google官方开发和推荐的安卓开发的主流工具,也是每个安卓程序员必备的神器。其安装简单,界面优美,使用方便,内置众多人性化功能和工具,每个人都可以根据自己需要进行定制,打造属于自己的开发利器。本文包含安装-配置-优化,让你的开发之路更加顺手。
2023-08-09 15:36:24
6382
原创 异常处理-异常概述
在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的。
2025-12-23 16:29:05
120
原创 面向对象(下)-内部类的分类
当一个事物的内部,还有一部分需要一个完整的结构进行描述,而这个内部的完整结构又只为外部事物提供服务,那么整个内部的结构最好使用内部类。在Java中,允许一个类的定义位于一个类的内部,前者称为内部类,后者称为外部类。分类:成员内部类(static成员内部类和非static成员内部类)局部内部类(不谈修饰符:方法内、代码块内、构造器内)、匿名内部类。Inner Class的名字不能与包含他的外部类的类名相同;
2025-12-19 17:27:20
188
原创 面向对象(下)-接口应用:代理模式 && 工厂模式
概述:代理模式是Java开发中使用比较多的一种设计模式。代理设计就是为其他对象提供一种代理以控制这个对象的访问。
2025-12-12 18:32:39
238
原创 面向对象(下)-接口的理解
接口的使用- 接口使用interface定义- java中,接口和类是并列的两个结构- 如何定义接口:定义接口中的成员- - JDK7及以前:in定义全局常量和抽象方法- -(全局常量:public static final,书写时可以省略)- -(抽象方法:public abstract,书写时可以省略)- - JDK8及以后:除了定义全局常量和抽象方法之外,还可以定义静态方法、默认方法- 接口中不能定义构造器!意味着接口不可以实例化。
2025-12-12 16:55:20
309
原创 面向对象(下)-模版方法的设计模式其应用场景
多态的应用:模版方法设计模式(TemplateMethod)抽象类体现的就是一种模版模式的设计,抽象类作为多个子类的通用模版,子类在抽象类的基础上进行扩展、改造,单子类总体上会保留抽象类的行为方式。解决的问题:- 当功能内部一部分实现是确定的,一部分实现是不确定的。这时可以把不确定的部分暴露出去,让子类去实现。- 换句话说,在软件开发中实现一个算法时,这就是一种模版模式。
2025-12-04 16:49:06
132
原创 面向对象(下)-抽象类与抽象方法的使用
abstract:抽象的abstract可以用来修饰的结构:类、方法- 此类不能实例化- 抽象类中一定有构造器,以便于子类实例化调用(涉及:子类对象实例化的全过程)- 开发中,都会提供抽象类的子类,让子类对象实例化,完成相关操作- 抽象方法只有方法的声明,没有方法体- 包含抽象方法的类,一定是一个抽象类。反之,抽象类中可以没有抽象方法。- 若子类重写了父类中的所有抽象方法后,此子类可实例化。- 若子类没有重写父类中的所有抽象方法,则此子类也是一个抽象类,需要使用abstract修饰。
2025-12-04 10:38:23
148
原创 面向对象(下)类中代码块结构的使用
代码块如果有修饰的话,只能使用static。分类:静态代码块 vs 非静态代码块。代码块的作用:用来初始化类、对象。
2025-12-02 18:03:40
134
原创 面向对象(下)-设计模式与单例设计模式
设计模式是在大量的实践中总结和理论化之后优先的代码结构、编码风格、以及解决问题的思考方式。设计模式就像是经典的棋谱,不同的棋局,我们用不同的棋谱,免去我们自己再思考和探索。总结就是“套路”。所谓的类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对,并且该类只提供一个取得该对象实例的方法。如果我们要让类在虚拟机中只产生一个对象。
2025-12-01 18:04:27
280
原创 面向对象(下)-static关键字的引入
当我们编写一个类时,其实就是在描述其对象的属性和方法,而并没有产品实质上的对象,只有通过new关键字才会产生出对象,这时系统才会分配内存空间给对象,其方法才可以供外部调用。我们有时候希望无论是否产生了对象或者无论产生了多少对象的情况下,。例如所有的中国人都有个国家名称,每一个中国人都共享这个国家名称,不必在每个中国人的实例对象中都单独分配一个用于代表国家名称的变量。
2025-12-01 13:01:53
128
原创 面向对象(中)-包装类理解,及包装类、基本类型与String类型相互转换
针对八种基础类型定义相应的引用类型-包装类(封装类)有了类的特点,就可以调用类中的方法,Java才是真正的面向对象IntegerCharacter。
2025-11-26 18:43:40
228
原创 面向对象(中)-Object类解析:包含equals和==、toString方法
Object类是所有Java类的根父类如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类Object类中的功能(方法)具有通用性。(注:Object中没有定义属性)Object类只声明了一个空参的构造对象销毁之前会调用finalize(),一般开发者不会主动调用该方法。当垃圾收集确定没有对该对象的更多引用时,由对象上的垃圾收集器调用。子类重写finalize方法以处置系统资源或执行其他清理。
2025-11-25 16:23:50
156
原创 面向对象(中)-多态练习
a、若子类重写了父类的方法,就意味着子类里定义的方法彻底覆盖了父类里的同名方法,系统将不可能把父类的方法转移到子类中。b、对于实例变量则不存在这样的现象,即使子类里定义了与父类完成相同的实例变量,这个实例变量依然不可能覆盖父类中定义的实例变量,编译运行的都看左边。
2025-11-24 17:58:09
159
原创 面向对象(中)-向下转型的使用
instanceof操作符:x instanceof A: 检验x是否为类A的对象,返回值为boolean类型。要求x所属的类与类A必须是子类和父类的关系,否则编译错误。如果x属于类A的子类B,则x instanceof A值为true。a instanceof A: 判断对象a是否是类A的实例。如果是,返回true;如果不是,返回false。
2025-11-24 17:08:33
145
原创 面向对象(中)- 多态性的使用
Java引用变量有两个类型:编译时类型和运行时类型。编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋值给该变量的对象决定。简单称为:编译时,看左边;若编译时类型和运行时类型不一样,就出现了对象的多态性(polymorphism)多态情况下,“看左边”:看的是父类的引用(父类中不具备子类特有的方法)“看右边”:看的是子类的对象(实际运行的是子类重写父类的方法)理解多态性:可以理解为一个事物的多种形态。对象的多态性:父类的引用指向子类的对象。可以直接应用在抽象类和接口上。多态的使用:虚拟方法调用。
2025-11-20 16:55:52
159
原创 面向对象(中)-super中调用属性和方法
比如父类圆有一个求圆面积的方法area,子类圆柱有一个求圆柱表面积的方法area,已知圆.area为PIRR,而圆柱.area为PIRRH,即圆.areaH。如果在圆柱中直接调用area,则调用的是圆柱的area而不是圆的area。有点类似this,为了在圆柱中使用圆的area,我们引入了super,即圆柱的表面积为super.area*H。
2025-11-19 16:50:48
139
原创 面向对象(中)-继承性的理解
(特别的,对于父类中private声明的属性和方法,子类依然可以继承,只是因为封装性的影响,子类中无法直接调用父类的私有结构)体现:一但子类A继承父类B以后,子类A中就获取了父类B中声明的所有属性和方法。继承性的格式:class A extends B {}B:父类、基类、superclass。A:子类、派生类、subclass。面向对象的特征二:继承性。
2025-11-13 17:37:40
339
原创 面向对象(上)-MVC设计模式的理解
这种将程序输入输出、数据处理、数据展示 分离开的设计模式,使程序结构变的灵活清晰,同时也描述了程序各个对象之间得通信方式,降低了程序的耦合性。MVC是常用的设计模式之一,将整个程序分为三个层次:视图模型层、控制器层、数据模型层。
2025-11-11 15:51:57
189
原创 面向对象(上)-this调用属性和方法
在java中,this关键字比较难理解,他的作用和其词义很接近。this表示当前对象,可以调用类的属性、方法和构造器。
2025-11-10 14:56:55
174
原创 面向对象(上)-封装性的引入
为什么需要封装?封装的作用和含义?我要用洗衣机,只需要按一下开关和洗涤模式即可,不需要连接洗衣机的内部构造和洗衣原理。我们的程序设计追求“高内聚,低耦合”高内聚:类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅对外暴露少量的方法用于使用。隐藏对象内部的复杂性,只对外公开简单的接口。便于外接调用,从而提高系统的可扩展性、可维护性。通俗的说:把该隐藏的隐藏起来,该暴露的暴露出来。
2025-11-06 18:36:33
278
原创 day_06_06方法的参数值传递机制
java里方法的参数传递只有一种:值传递。即将实际参数值的副本(复制品)传入方法内,而参数本身不受影响。方法,必须尤其躲在类或对象调用才有意义。java的实参值如何传入方法?
2025-11-04 17:07:03
170
原创 day03_12 数组的使用
数组中的元素可以是任何数据类型,包括基础数据类型和引用数据类型。数组属于引用类型,数组型数据是对象,数组中的每个人元素相当于该对象的成员变量。
2025-10-29 16:12:16
253
原创 day02_04逻辑运算符
逻辑与和短路与:需要两个都为true才是true,在短路与中,如果左侧为false,则右侧不进行计算。逻辑或和短路或:需要两个中有一个为true,在短路或中,如果左侧为true,则右侧不进行计算。逻辑异或:只要有不一样的,就是true。
2025-10-29 10:36:58
152
原创 Android Studio第一个kotlin项目“Hello Android”
现在的Android Studio默认的kotlin demo和之前一些书上记载的又不一样了。全面使用kotlin+Jetpack Compose方式编写,继Data Binding 后推广,但是少了layout布局,初看一头雾水。这里查阅了一些资料,简单解释一下,备忘。MainActivity中onCreate和之前一样。Greeting方法中包含了text和布局。GreetingPreview方法用于预览。Android Studio 预览。
2025-08-08 14:38:28
558
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅