- 博客(50)
- 资源 (9)
- 收藏
- 关注
原创 java面试题
java基础方面:java基本数据类型类型基本数据数值型 整数类型(byte,short,int,long) 浮点类型(float,double) 字符型(char) 布尔型(boolean)引用数据类型类(class) 接口(interface) 数组([ ])访问修饰符 public,private,protected,以及不写(默认)时的区别...
2020-03-23 23:31:44 339
原创 java-JDK的下载和安装
1、建议:通过官网获取JDK:http://www.oracle.com/downloads/index.html2、进入网站,下载JDK3、安装JDK,安装路径不要有中文和空格。所有的开发工具最好安装目录统一。注意:默认的安装路径在C盘,并且有空格,所以一定要修改!4、安装完成!...
2020-02-25 13:27:17 150
原创 java-回调机制
通过案例来解释回调机制:案例1:老师在黑板上谢了一个例子“1+1=”,由小明同学来填空。由于已经学了10以内的加法,小明同学可完全自己计算:package ss;public class Student { private String name=null; public Student(String name){ this.name=name; } pub
2017-05-11 14:57:33 327
原创 《java设计模式》之工厂设计模式
工厂设计模式介绍:工厂设计模式就是用于产生对象的。看下方简单案例:工厂设计模式就是用于产生对象的。class Car{}class BMW extends Car{}class BSJ extends Car{}public class Demo1 { public static void main(String[] args) { } public static Car get
2017-05-04 17:37:56 423 1
原创 《java设计模式》之观察者设计模式
观察者设计模式:观察者设计模式解决的问题时当一个对象发生指定的动作时,要通过另外一个对象做出相应的处理。(类似事件监听)需求编写一个气象站、一个工人两个类,当气象站更新天气 的时候,要通知人做出相应的处理。不用设计模式的解决思路:(1)编写气象站类public class WeatherStation { String[] weathers={"晴天","雾霾", "刮风","冰雹","
2017-05-04 17:10:25 294
原创 java-对象的克隆
对象的克隆:对象的克隆分为浅克隆和深克隆。对象浅克隆注意的细节:如果一个对象需要调用clone的方法克隆,那么该对象所属的类必须要实现Cloneable接口。Cloneable接口只不过是一个标识接口而已,没有任何方法。对象的浅克隆就是克隆一个对象的时候,如果被克隆的对象中维护了另外一个类的对象,这时候只是克隆另外一个对象的地址,而没有把另外一个对象也克隆一份。对象的浅克隆也不会调用到构造方
2017-05-04 11:09:26 345
原创 《java设计模式》之装饰者设计模式
增强一个类的功能,而且还可以让这些装饰类互相装饰。BufferedReader是不是拓展了FileReader的功能。BuferedWriter 也是拓展了FileWriter的功能。需求1: 编写一个类拓展BufferedReader的功能, 增强readLine方法返回 的字符串带有行号。需求2:编写一个类拓展BufferedReader的功能, 增强readLine方法返回 的字符串带有分号。
2017-05-03 16:56:24 240
原创 java-枚举
某些方法所接收的数据必须是在固定范围之内的,这时候我们的解决方案就是自定义一个类,然后是私有化构造函数,在自定义类中创建本类的对象对外使用。jdk1.5对以上问题提出了新的解决方案: 就是使用枚举类解决。一些方法在运行时,它需要的数据不能是任意的,而必须是一定范围内的值,Java5以后可以直接使用枚举予以解决。比如: 方向 , 性别 、 季节 、 星期……//自定义一个性别类class Gende
2017-05-03 10:56:25 242
原创 java-自动装箱与自动拆箱
介绍:java是面向对象的语言,任何事物都可以使用类进行描述,sun就使用了 一些类描述java中八种基本数据类型数据。类型 类byte Byteshort Shortint Integerlong Longfloat Floatdouble
2017-05-03 10:49:25 210
原创 java-可变参数
Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。可变参数的格式:数据类型... 变量名数要 注意的细节:如果一个函数 的形参使用上了可变参数之后,那么调用该方法的时候可以传递参数也可以不传递参数。可变参数实际上是一个数组对象。可变参数必须位于形参中的最后一个参数。一个函数最多只能有一个可变 参数,因为可变参数要位于形参中最后一个位
2017-05-03 10:39:31 230
原创 java-增强for循环
介绍:jdk1.5出现的新特性用于增强for循环。增强for循环的作用:简化迭代器的书写格式。增强for循环的试用范围:如果是实现了Iterable接口的对象或者是数组对象都可以使用增强for循环。增强for循环的格式:for(变量类型 变量名:遍历的目标){}增强for循环要注意的事项:增强for循环底层也是使用了迭代器获取的,只不过获取迭代器由jvm完成,不需要我们获取迭代器而已,
2017-05-03 10:22:13 354
原创 java-回调函数
回调函数:回调函数,简称回调,是指通过函数参数传递到其他代码的,某一块可执行代码的引用。所谓的回调:程序员A写了一段程序(程序a),其中预留有回调函数的接口,并封装好了该程序。程序员B要让a程序调用自己的程序b中的一个方法,于是,他通过a中的接口回调自己b中的方法。程序员A通过a()方法,得到接口实现类b对象的引用,然后就可以重写b对象的b()方法。从而使用b()方法。例子://程序员A写了一
2017-03-30 10:06:26 303
原创 Android-自定义View(SurfaceView)
简介:SurfaceView相对于View来说性能更高,画任何东西的时候,先画到内存,一次性移致到屏幕上,一般游戏中常用。通过案例讲解SurfaceView:import android.content.Context;import android.graphics.Canvas;import android.graphics.Paint;import android.util.Attribu
2017-03-28 17:59:41 1284
原创 Android-自定义View(二)
预期总体效果图(模仿股票):先画底部时间:效果图:Activitypublic class MainActivity extends Activity {CustomView customView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedI
2017-03-28 17:28:07 321
原创 Android-自定义View(一)
介绍:一般在做界面时使用控件就分两类,一种是android自带的控件,另一种就是自定义View。自定义背景图(1)继承View,重写相关方法package com.example.customview;import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;im
2017-03-28 08:52:26 254
原创 Android-Notification(通知)
简介:Notification —— 通知,是一种让你的应用程序在不使用Activity的情况下警示用户。它是看不见的程序组件(Broadcast Receiver,Service和不活跃的Activity)警示用户有需要注意的事件发生的最好途径。 Notification 是由NotificationManager(系统服务)统一管理的。Android中如何发送一个通知?1>获取系统服务Notif
2017-03-23 17:38:38 223
原创 Android-AsyncHttpClient网络框架
android-async-http简介 :Android中收集要求一样平常应用Apache HTTP Client或采纳HttpURLConnect,然则间接应用那两个类库须要写大批的代码才干完成收集post战get要求,而应用android-async-http那个库能够大大的简化操。android-async-http特性:采用异步http请求,并通过匿名内部类处理回调结果http请求
2017-03-20 18:27:04 341
原创 Java-线程(生产者消费者模式)
介绍:在Java多线程应用中,队列的使用率很高,多数生产者消费者模型的首选数据结构就是队列(先进先出)。Java提供线程安全的Queue可以分为阻塞式队列和非阻塞式队列。阻塞式队列的典型例子就是BlockingQueue.非阻塞式队列的典型例子就是LinkedList(双向列表)/*** * Collection(list,set,queue) * @author pjy * *
2017-03-14 10:50:35 424
原创 java-匿名内部类
匿名内部类:没有类名的类。匿名内部类的好处:简化书写匿名内部类的使用前提:必须存在继承或者实现的关系才能使用。当匿名内部类中存在特有方法的时候,就不能使用匿名内部类了,只能使用局部内部类。继承关系下的匿名内部类:注意:当存在特有方法时,就不能使用匿名内部类了,只能使用局部内部类。/*继承关系下的匿名内部类:*/abstract class Animal{ public abs
2016-12-27 23:46:00 456 1
原创 java-内部类
内部类:一个类定义在另外一个类的内部,那么该类就称作为内部类。内部类的class文件名:外部类$内部类,好处:便于区分该class文件是属于哪个外部类的。内部类的好处:内部类可以直接访问外部类的所有成员。比如:人—>心脏 class 人{ 血 氧气 等.... //心脏会用到人体的一些特性 class 心脏{ } }内部类的
2016-12-26 22:52:54 222
原创 java-反射
反射:一种动态(对象运行时)机制。在java中对应一组API。反射的作用:在对象运行时获得对象的属性,方法等对象,并可以动态的操作这些对象。 在这样的API中的它将类中所有成员,都看成是对象。从对象的角度操作这些成员。通常情况下反射会应用在一些框架(framwoek)编程中。 例如:android 中的activity对象我们没有创建过,运行时,它是由android框架创建的。学习反
2016-12-13 18:19:49 301
原创 java-接口
接口的作用:扩展功能可以定义约束规范接口定义格式:interface 接口名{}接口注意事项:接口是一个特殊的类。接口的成员变量默认的修饰符为public static final。那么就是说接口的成员变量都是常量。接口中的方法都是抽象的方法,默认的修饰符为public abstract。接口不能创建对象。接口是没有构造方法的。接口是给类去实现使用的,非抽象类实现一个接口的时候,必
2016-12-12 16:05:07 265
原创 java-继承
继承:继承是通过关键字extends体现的。继承的格式:class 类名1 extends 类名2{}继承要注意的事项:千万不要为了减少重复代码而去继承,只有真正存在着继承关系的时候才去继承。父类私有的成员不能被继承。父类的构造函数不能被继承。创建子类对象时默认会先调用父类无参的构造函数。//人类 class Person{ String name; private in
2016-12-09 15:02:38 279
原创 《java设计模式》之单例模式
单例设计模式: 保证一个类在内存中只有一个对象!!模式:模式就是解决一类问题的固定步骤。步骤:私有化构造函数。声明本类的引用类型变量,并且使用该变量指向本类对象//保证Single类只有一个对象。class Single{ //(1)私有化构造函数 private Single(){ }}class Demo5{public static void main
2016-12-08 17:22:28 558
原创 java-构造代码块
构造代码块的作用:给对象进行统一的初始化。构造函数的作用:给对应的对象进行初始化。构造代码块的格式:{ 构造代码块}构造代码块注意:构造代码块的大括号必须位于成员位置上构造代码块代码的执行时间:在创建对象的时候先执行。java编译器编译一个java源文件的时候,会把成员变量的声明语句提前至一个类的最前端。一旦经过java编译器编译后,那么构造代码块的代码块就会被移动构造函
2016-12-07 15:04:39 289
原创 Android-RecyclerView(解析二)
package com.example.recyclerview;import java.util.ArrayList;import java.util.List;import java.util.Locale;import android.os.Bundle;import android.app.Activity;import android.support.v7.widget.Defa
2016-10-20 20:46:46 284
原创 Android-RecyclerView(解析二)
添加点击事件1、适配器的编写package com.example.recyclerview;import java.util.List;import android.content.Context;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android.vi
2016-10-20 18:41:47 468
原创 Android-RecyclerView(解析一)
RecyclerView介绍RecylerView是support-v7包中的新组件,是一个强大的滑动组件。RecylerView封装了viewholder的回收复用,也就是说RecylerView标准化了ViewHolder,编写Adapter面向的是ViewHolder而不再是View了,复用的 逻辑被封装了,写起来更加简单。提供了一种插拔式的体验,高度的解耦,异常的灵活,针对一个Ite
2016-10-20 15:51:12 283
原创 state框架分析,多态,接口,综合案例
state框架分析:状态相当于模块(状态)。案例:点击屏幕不同位置,显示到不同状态。 包:package framework: interface BaseState类: class GameView类 包:package state: class MainMenuState,GameState,HelpState类图:程序细化:代码BaseState接口package com.exa
2016-10-04 22:19:19 514
原创 Android-单线程轮循机制批量下载图片、图片压缩、内存泄漏、图片缓存、文件缓存
ListView异步批量加载图片单线程轮循机制批量下载图片例如:imageloader框架底层也是这么实现的!思路:主线程向任务集合添加一个任务,工作线程从任务集合移除第一个任务,如果有任务一直移除,一直轮循,拿到图片之后解析成Bitmap,呈现的imageView当中。 package com.tarena.musicclient.adapter;import java.io.IOExceptio
2016-09-17 10:32:22 2142
原创 Android中AIDL跨进程访问机制
AILD机制: 通俗的讲就是访问别人的服务。 使用情况: 访问别人的第三方服务框架 例如: 自己的Activity访问别人的service 案例:跨应用进程绑定访问service服务端1、编写服务端 android_day11_service PlayMusicService.javapackage com.example.android_day11_service;import c
2016-09-12 18:33:01 309
原创 安卓四大组建之ContentPrvider之通讯录
通过本章学习利用contentProvider来读取本地手机联系人以及本地SQLite存储。contentProvider跨进程共享机制,也就是所谓的跨应用程序。 可以我这个应用程序和别的应用程序共享一个数据库。还可以共享文件等。 系统也有一些自带的contentProvider供我们共享。contentResolver访问别人的私有数据库。Anroid中联系人相关操作思考问题: 1、联系人数
2016-09-10 10:53:45 797
原创 java-RandomAccessFile
RandomAccessFileInputStream/OutputStream FileInputStream/FileOutputStream BufferedInputStream/BufferedOutputStream DataInputStream/DataOutputStream PrintStream ByteArrayInputStream/ByteArrayOutput
2016-06-29 11:32:39 348
原创 Android-数据存储2(SQLite)及Android底层框架简介
Android底层架构:四层Application (APP) (应用层)Application Framework (AF):例如:继承官方activity (java写的框架)C/C++ Libraries(库) :包括SQLite,Dalvik(虚拟机) (写好的库)Linux 内核+硬件驱动(嵌入式编程)
2016-06-11 14:17:28 901
原创 java-StringBuider与StringBuffer
java.lang.StringBuilderjava.lang.StringBuffer可变的字符序列封装一个char[] 数组提供一组对内部字符修改的方法代替字符串做字符串的高效率链接使用例子StringBuilder sb=new StringBuilder(); sb.append(s1);//追加//不会再重新创建对象 sb.append(s2);//追加//不会再重新创建对
2016-06-09 18:34:14 272
原创 面向对象-四大内部类
内部类定义在一个类内部,或方法内部,或局部代码快内部的类内部类的使用情况:外部类和内部类关系紧密,看个人设计选择隐藏类型 作为外部类私有成员的一个访问窗口临时使用一次的类内部类与外部类没有访问限制 非静态内部类非静态属于对象、实例class A{ //非静态内部类,前面没有static class Lnner{ }}非静态内部类对象创建方
2016-05-25 13:20:34 439
原创 面向对象-构造方法2-构造方法中调用另一个重载构造方法
承接面向对象-构造方法1 如何在构造方法中调用另一个重载的构造方法:案例:编写汽车类汽车类属性: int id; String brand; String color; int weight;汽车类中的构造方法: Car(); Car(id,brand); Car(id,brand,color); Car(id,brand,color,weight);汽车类中的方法 go
2016-05-22 14:23:29 2220 2
原创 Android-BroadcastReceiver广播接收器
广播接收器:Android四大组件之一。代码编写注册注销方法。发送广播一般用的是隐式意图!Broadcast是一种广泛应用在应用程序之间传输信息的机制。广播是Android中跨进程通讯的一种机制。组件与组件进行数据传递的时候用BroadcastReceiver(发广播,写广播接收器)。 (数据传递)(数据传递)(数据传递)普通广播context.sendBroadcast(intent); 发送
2016-05-16 01:17:32 598
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人