- 博客(34)
- 收藏
- 关注
转载 Java的native方法
今天花了两个小时把一份关于什么是Native Method的英文文章好好了读了一遍,以下是我依据原文的理解。一. 什么是Native Method 简单地讲,一个Native Method就是一个java调用非java代码的接口。一个Native Method是这样一个java的方法:该方法的实现由非java语言实现,比如C。这个特征并非java所特有,很多其它的编程语言都有这一机制,比如在
2017-11-27 13:14:40
338
转载 装饰者模式
1.定义: 装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。使用Decorator模式相比用生成子类方式达到功能的扩充显得更为灵活。2.设计初衷 : 通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生成很多子类,增加系统的复杂性,同时,使用继承实现功能拓展,我们必须可预见这些拓展功能,这些
2017-11-20 10:42:44
287
原创 Java面试的一些总结
1.为什么Java中的静态方法不能是抽象的?概念问题:static静态方法又叫类方法,意义在于不用实例化对象即可直接调用,而abstract 修饰的抽象方法,是没有方法体的,本身没有任何意义,它的价值在于被继承重写,但是重写是基于对象的。所以这两者从最基本的概念都是冲突的。2.静态方法可以被重写吗?public class StaticTest { public static
2017-11-16 12:54:22
296
转载 毕向东异常总结
异常: 什么是异常?是对问题的描述,将问题进行对象封装 ---------- 异常体系: Throwable |--Error |--Exception |--RuntimeException ----------- 异常体系的特点:异常体系中的所有类以及建立的对象都具备可抛性
2017-11-15 21:00:34
275
原创 static、final、static final 用法
一.static 用法:static 可以修饰:成员变量、方法、代码块和内部类。 1、静态变量 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量;另一种是没有被static修饰的变量,叫实例变量。 类中的实例变量是在创建对象时被初始化的,被static修饰的属性,也就是类变量,是在类加载时被创建并进行初始化,类加载的过程是进行一次。也
2017-11-15 20:07:35
1091
转载 Java关键字this、super使用总结
1.this的用法Java关键字this只能用于方法方法体内。当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this。并且this只和特定的对象关联,而不和类关联,同一个类的不同对象有不同的this。下面给出一个使用this的综合实例,以便说明问题:publi
2017-11-15 19:27:41
202
原创 Java四种内部类
内部类分为四种:1.成员内部类 2.局部内部类 3.静态内部类 4.匿名内部类(一)实现方式:1.成员内部类//成员内部类......相当于非静态方法class MemberInner { private int a = 2; public class Inner2 { private int a =3 ; public void doSomething(int
2017-11-15 16:02:37
222
原创 java多线程面试题
1) 什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。Java在语言层面对多线程提供了卓越的支持,它也是一个很好的卖点。2) 线程和进程有什么区别?线程是进程的子集,一个进程可以有很多线程,每条线程
2017-11-15 14:05:21
213
转载 Java中==和equals的区别,equals和hashCode的区别
Java中==和equals的区别1.基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean 他们之间的比较,没有hashcode和equals方法,基本变量的比较方式就只有==,比较的是他们的值。2.如果是你自己定义的一个类,比较自定义类用equals和==是一样的,都是比较内存地址,因为自定义的类是继承于object,而
2017-11-11 21:45:26
294
转载 Eclipse自动部署项目到Tomcat的webapps下的有效方法
1)新建个Dynamic Web Project,命名为mysql,在WebContent下,新建个文件index.jsp,随便写段代码,见图一: 2)点击mysql项目名,然后点击右键Run As—》Run on Server,按照图二 的样式,点击 Next,再点Finish,见图三:3)Servers下,已经添加好了一个Tomcat v7.0 Server,在上面点右键,选择open,打开
2017-11-08 22:22:23
521
转载 关于java中的try-catch-finally语句和return
第一:return语句并不是函数的最终出口,如果有finally语句,这在return之后还会执行finally(return的值会暂存在栈里面,等待finally执行后再返回) 第二:finally里面不建议放return语句,根据需要,return语句可以放在try和catch里面和函数的最后。可行的做法有四: 1.return语句只在函数最后出现一次。 2.return语句仅在try和c
2017-11-07 22:13:23
322
原创 从JsonArray中取出最后三个对象组成新的JsonArray
JSONArray advice为: "[{name:'a',value:'aa'},{name:'b',value:'bb'},{name:'c',value:'cc'},{name:'d',value:'dd'}]" 通过以下代码可以取出最后三项,并组成新的JSONArray advice_3:JSONArray advice = data.optJSONArray("doctorAdvice"
2017-08-04 16:31:36
8927
2
转载 mysql命令行出现输入错误时如何返回修改前边的命令
mysql命令行中执行多行命令时,如果前边输入的命令发生错误,是很令人头疼的事情,可以通过输入\c来取消前边的输入,重新进入“mysql->”提示符。但是如果前边输入的东西很多,直接取消又很可惜的,因为得重新敲打指令,这种情况下,可以通过输入\p,然后在命令行客户端右键,选择“标记”,就可以选择要复制的内容,选择好后,按Enter,即可将选择的内容复制到剪切板,接着输入\c,再粘贴,修改,执行命令。
2017-06-07 10:15:55
36918
3
转载 android ANR产生原因和解决办法
ANR (Application Not Responding) ANR定义:在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:Application Not Responding)对话框。用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”。所以一个流畅的合理的应用程序中不能出现anr,而让用户每次都要处理这个对
2017-05-15 21:58:15
362
转载 android程序内存泄漏的原因和解决办法
###内存泄漏也称作“存储渗漏,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。即所谓内存泄漏。内存泄漏简单地说就是申请了一块内存空间,使用完毕后没有释放掉。它的一般表现方式是程序运行时间越长,占用内存越多,最终用尽全部内存,整个系统崩溃。由程序申请的一块内存,且没有任何一个指针指向它,那么这块内存就泄露了。从用户使用程序的角度来看,内存泄漏本身不会产
2017-05-15 21:47:24
207
转载 Android中数据存储有哪些方法
总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络。其中文件和数据库可能用的稍多一些,文件用起来较为方便,程序可以自己定义格式;数据库用起稍烦锁一些,但它有它的优点,比如在海量数据时性能优越,有查询功能,可以加密,可以加锁,可以跨应用,跨平台等等;网络,则用于比较重要的事情,比如科研,勘探,航空等实时采集到的数据需要马上通过网络传输到数据处理中心进行存储并进行处理。 对于And
2017-05-15 21:41:15
438
转载 进程与线程的一个简单解释
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。 最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。 1. 计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。 2. 假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。背后的含义就是,单个CPU一次只能运行
2017-05-15 21:06:00
204
转载 Handle用法中Message创建方式:new Message和obtainMessage的区别
创建Message对象的时候,有三种方式,分别为: 1.Message msg = new Message(); 2.Message msg1 = Message.obtain(); 3.Message msg2 = handler.obtainMessage(); 这三种方式有什么区别呢?使用方式:public class MainActivity extends Activity
2017-05-11 14:31:18
4511
原创 Eclipse中的java、xml代码提示功能设置
设置java 文件的代码提示功能:打开Eclipse,然后“window”→“Preferences” 选择“Java”,展开,“Editor”,选择“Content Assist”选择“Content Assist”,然后看到右边,右边的“Auto-Activation”下面的“Auto Activation triggers for java”这个选项。其实就是指触发代码提示的就是“.”这
2017-05-06 13:09:04
348
转载 Math.round()方法
Math.round()即四舍五入,看如下代码:public class MathTest { public static void main(String[] args) { System.out.println("小数点后第一位=5"); System.out.println("正数:Math.round(11.5)=" + Math.round(11.5))
2017-04-16 16:03:59
480
原创 Java十进制转化成二进制方法
十进制转二进制的除二取余倒序法的逻辑依据是什么?可以用十进制来类比:一个数123456789用除十取余求它的十进制表达式 第一次除以10,商12345678 余9, 第二次除以10,商1234567 余8, 第三次除以10,商123456 余7, … 一直到商比10小为止(n进制为商比n小为止) 咋取,是顺是倒,一目了然吧下面具体说明 假设一个十进制数k要转换为n进制(设i位上的数字为
2017-04-10 15:35:01
910
转载 Java的位运算符详解实例——与(&)、非(~)、或(|)、异或(^)
位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面详细介绍每个位运算符。1.与运算符 与运算符用符号“&”表示,其使用规律如下: 两个操作数中位都为1,结果才为1,否则结果为0,例如下面的程序段。 public class data13 {
2017-04-10 14:06:50
222
原创 Java代码练习
1代码:public class xixueguidigital_2 { public static void main(String[] args) { int a,b,c,d; int s[]=new int[4]; boolean flag ; for(int i=1000;i<10000;i++){ s[0]
2017-04-10 10:46:03
4794
原创 Android studio统计代码行数
方法1、Android studio统计代码行数插件–>statistic最近想查看Android studio项目的代码行数,查看了半天发现了一个比较不错的android studio插件:statistic;官方网址:https://plugins.jetbrains.com/plugin/4509在官网上下载jar包就好了,然后打开android studio–>setting->Plugin
2017-04-05 19:24:12
12015
1
转载 Java中String、StringBuffer、StringBuilder的区别
Java中String、StringBuffer、StringBuilder是编程中经常使用的字符串类,他们之间的区别也是经常在面试中会问到的问题。现在总结一下,看看他们的不同与相同。1.可变与不可变String类中使用字符数组保存字符串,如下就是,因为有“final”修饰符,所以可以知道string对象是不可变的。private final char value[];StringBuilder与S
2017-03-29 18:12:29
323
原创 2017校招全国统一模拟笔试第一场-编程题(8题)-牛客网(java)
1、好多鱼牛牛有一个鱼缸。鱼缸里面已经有n条鱼,每条鱼的大小为fishSize[i] (1 ≤ i ≤ n,均为正整数),牛牛现在想把新捕捉的鱼放入鱼缸。鱼缸内存在着大鱼吃小鱼的定律。经过观察,牛牛发现一条鱼A的大小为另外一条鱼B大小的2倍到10倍(包括2倍大小和10倍大小),鱼A会吃掉鱼B。考虑到这个,牛牛要放入的鱼就需要保证:1、放进去的鱼是安全的,不会被其他鱼吃掉2、这条鱼放进去也不能吃掉其他
2017-03-24 11:21:49
938
转载 java中的compareto方法
java中的compareto方法,返回参与比较的前后两个字符串的asc码的差值,看下面一组代码String a=”a”,b=”b”; System.out.println(a.compareto.b); 则输出-1; 若a=”a”,b=”a”则输出0; 若a=”b”,b=”a”则输出1;单个字符这样比较,若字符串比较长呢?? 若a=”ab”,b=”b”,则输出-1; 若a=”abcde
2017-03-22 12:58:55
480
转载 Java多态性
什么是多态面向对象的三大特性:封装、继承、多态。从一定角度来看,封装和继承几乎都是为多态而准备的。这是我们最后一个概念,也是最重要的知识点。多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应
2017-03-22 09:43:18
258
原创 如何用Java语言从键盘输入内容
首先定义scanner方法:Scanner scanner = new Scanner(System.in);此时会提示有错误,需要加入头文件:import java.util.Scanner;1、从键盘输入整形变量:Scanner scanner = new Scanner(System.in);System.out.print("请输入整数:");int n=scanner.nextInt(
2017-03-09 13:43:38
12096
原创 安卓常用布局(线性、相对、帧、表格布局)
1、线性布局效果图:Xml文件如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="matc
2017-03-09 11:23:55
421
原创 安卓按钮点击事件的四种写法
很多学习Android程序设计的人都会发现每个人对代码的写法都有不同的偏好,比较明显的就是对按钮点击响应事件的写法的不同。本文就把这些写法总结一下,比较下各种写法的优劣。
2017-03-09 10:49:12
791
原创 使用Intent在活动间穿梭
使用Intent在活动间穿梭当你点击启动器时只能进入主活动,那么怎样才能由主活动跳转到其他活动呢?Intent 是android 程序中各组件之间进行交互的一种重要方式,它不仅可以指明当前组件想要执行的动作,也可以在不同组件之间传递数据,Intent一般可被用于启动活动、启动服务、以及发送广播等场景。本文讲的是用Intent启动活动。
2017-03-08 18:47:03
295
原创 在活动中使用menu
本文在android studio 上实现1、首先res/new/directory ,输入文件名menu,点击finish,接着右键menu,在这个文件夹下新建一个menu resourse file,命名为main,点击finish完成创建。2、然后在main.xml中添加如下代码:menu xmlns:android="http://schemas.android.com
2017-03-08 16:06:57
384
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人