Java
文章平均质量分 75
grey_csdn
这个作者很懒,什么都没留下…
展开
-
Java代码风格探索
刚刚开始学习Java,对这门语言还没有什么深入的了解。跟着教程学习了几天,还处于hell world的阶段。不过也没什么,我本身就是喜欢这种按部就班、稳扎稳打的方式,何况我计划学习Java学习的深入一些。看了不同的教程,包括纸质的以及慕课网网站上的视频,看到的代码风格基本上都是像下面这种: 1 publicclass HelloWorld{ 2 public原创 2017-01-12 23:21:41 · 702 阅读 · 0 评论 -
三种常用排序算法(冒泡、选择、快速)的Java实现
学习Java有一阵子了,现在还处于比较初级的水平,能够把简单的程序写对就不错了,更不用谈现在能够拿Java做什么了。 学完了两段网络视频课程,接下来找本书简单看看。只要有了一个初步的认识,接下来的东西应该可以更加顺利一些。学习编程最好的方法就是练手了,现在还不知道有什么比较好的东西可以尝试,不过跑不出一般教程的排序算法还是可以尝试一下的。1,冒泡排序算法packagebub原创 2017-03-12 01:25:15 · 2432 阅读 · 0 评论 -
Java与C语言数组实现机理的一点对比
想看一下Java的数组实现机制是否与C语言一致,同时看看是不是被隐藏掉的指针功能实现的类似数组访问功能。Java中是不是还有什么类似简写这样的表示说明呢?写了两段简单的代码示意一下。C语言代码:#include"stdio.h" int array_data[] ={1,5,3,6,2,4}; int main(void){ printf("%d\n",原创 2017-03-12 12:31:11 · 1563 阅读 · 0 评论 -
Java的成员隐藏与属性封装
关于这个功能的优点我现在体会还不深,只是从书本中找到了面向对象编程的一个原则——尽量让数据私有。如果需要对数据的信息进行修改或者获取,不会直接修改成员信息,而是通过方法的调用来实现。 写如下代码:packagefengzhuang; class HuaShanPai{ private Stringzhangmen; private int原创 2017-03-21 23:38:34 · 2186 阅读 · 0 评论 -
快速排序的Java实现
之前整理过一份学习笔记放到了博客上,但是算法是借用了他人的成果,是看了网上多篇文章之后又写出来的。写完的时候还遇到一点小问题,最终的纠正方式也是参考网络文章。今天再次整理一下相关的内容,主要是针对自己曾经有一点迷惑的地方进行思考总结。 之前的代码:packageQuickSortPack; public class QuickSortClass {原创 2017-03-12 20:19:56 · 511 阅读 · 0 评论 -
Java中For-Each循环的使用
for-each这种集合的遍历方法最初是在Perl中接触的foreach。开始的时候受C语言的影响多少有些不习惯,不过写了两段代码之后就觉得十分适应了,因为这种描述方式与我们的日常表达语言十分相似。再接下来的接触自然是Python,感觉两种方式差不多,但是在Python我又习惯了当子元素作为一个集合的时候。Java的遍历语句语法介于两者之间,但是由于本身是强数据类型的语言,在子元素的声明上需要原创 2017-03-13 01:15:27 · 3890 阅读 · 0 评论 -
Java中的线程创建基础
为了能够让程序更加实时高效,线程的使用时一个很好的选择,而多线程是Java的一个很重要的特征。 关于多线程技术我一直感兴趣但是从来没有研究过,但是每次看到类似的文章都会看一下。比如说,一直比较火的Python和Java有人做过对比。单线程下,Java的运行速度很有优势,但是多线程下两个速度差不多。虽说那时候还没有接触线程的概念,但是大致的结论还是习惯性记了一下。今天先总结一下多线程原创 2017-03-23 23:36:56 · 513 阅读 · 0 评论 -
Java中使用Thread创建多线程并启动
按照教程实现了一个单线程的创建,但是单线程的创建于启动并不是很有实用价值的。毕竟直接在main方法中放着相关的执行操作本身也就是一种单线程的实现。接下来在之前用过的代码基础上稍作修改,形成如下代码:class ThreadDemoextends Thread{ ThreadDemo(){}; ThreadDemo(String szName原创 2017-03-23 23:49:04 · 573 阅读 · 0 评论 -
Java中使用Runnable接口创建并启动多线程
使用Runnable接口创建多线程的方法暂时还没有体验到有什么优点,感觉整体上比使用Thread直接创建稍微麻烦一点。而且,创建的过程中本身也用到了Thread构造方法。写一段测试代码:class RunnableDemoimplements Runnable{ public void run() { int i = 0;原创 2017-03-24 00:07:59 · 4774 阅读 · 0 评论 -
Java中的静态变量使用
同样是static的关键字修饰,但是感觉Java中的静态变量跟C语言中的静态变量还真不是一回事儿。从作用的广度上来说,Java重的static修饰后的静态变量倒是作用的广度更广一些。 写一段简单的代码:public classStaticDemo{ public static void main(String[] args) {原创 2017-03-15 20:20:44 · 1572 阅读 · 0 评论 -
使用命令行编译运行指定了包的Java程序
曾经因为这个问题,我由命令行转向了eclipseIDE。近段时间学习的平台转换了一下,看了一点其它的介绍。今天把简单能够使用的方式给稍微练习总结一下。 首先,包的指定方式是通过关键字package。如果使用了包,相应的代码文件需要放到一个跟包名相同的文件夹中。把之前的代码修改如下:package PkgDemo; public classStaticDemo{原创 2017-03-15 23:32:20 · 706 阅读 · 0 评论 -
Java中多进程程序优先级的设定与使用
涉及到多线程,如果嵌入式处理时后我已经接触到的优先级问题,Java之中应该也是避免不了的。看了一下,Java中有针对多线程优先级的使用技术。 为了验证,做一个对比使用,写一段使用默认优先级的代码如下:public classPriorityDemo extends Thread{ PriorityDemo() { }原创 2017-03-25 23:24:56 · 2704 阅读 · 0 评论 -
Java中的接口定义、实现与应用
通过简单的学习,我觉得可以这么理解:接口实际上是一个类的框架,而类则是实例的模子。接口中定义的全都是最基本的框架,而且所定义的方法全都是抽象的、未实现的。简单写一段代码:packagepkgInterface; interfaceMenPai{ String zu_zhi ="五岳剑派"; public void ZhangMen();原创 2017-03-20 23:03:28 · 744 阅读 · 0 评论 -
Java程序命令行参数使用以及参数最多个数测试
在写Perl程序的时候我时常会使用命令行参数,这会让我的脚本使用起来十分灵活。使用了一段时间Python,这个功能考虑过但是从来没有去学习一下具体应该如何实现。今天看Java看到了命令行参数,感觉学到了一个令人十分高兴的新特性。Java中的命令行参数原来是通过主函数的参数实现的。这让我想到了之前看过的Python发明者的一篇文章,里面介绍了他说自己写的主函数中加入了各种参数。现在我还不是很清楚这两原创 2017-03-10 00:59:18 · 4676 阅读 · 0 评论 -
Java中的抽象类与抽象方法
基础语法与编程代码上值得一说的只有:抽象类或者抽象方法需要用abstract进行修饰。其它的都是抽象类与抽象方法的特殊用法,直接在简单的代码示范后再做总结:packagepckAbstrac; abstract class clsMenPai{ void GongFu() { System.out.println("会功夫");原创 2017-03-19 23:25:07 · 662 阅读 · 0 评论 -
使用eclipse创建多文件java工程出现找不到或无法加载主类问题解决
上面的这个问题在没有使用eclipse IDE的时候就已经遇到过,也就是上午的事情。我暂时把这个问题归类为“包管理”出现了问题,就是package使用出现了问题。不过,上午尝试解决的时候也是凭借尝试以及运气解决的。出现这个问题其实也是我想换用eclipse的一个原因,我觉得IDE毕竟还是能够把部分问题化繁为简。没想到,第一次尝试又遇到了这个问题。经过多次尝试,最终问题得以解决。我学习的时候参考原创 2017-02-20 00:43:06 · 3002 阅读 · 0 评论 -
Mac下安装eclipse Java开发环境
我个人还真有点不适很适应在UNIX环境下折腾软件,或许正是这个原因,我很少去碰这些我不是很懂的东西,如此系统在我折腾的过程中显得十分健壮。不过,说到搞软件开发,最基本的工具或者开发环境还是要有的。最初决定放弃eclips,毕竟这算是个臃肿的环境。我觉得使用VIM加上编译器以及解析器,基本的工作应该都能够做了。我想,Java也应该如此,其实Java也确实如此。但是,折腾了一阵子发现在包管理上还是原创 2017-02-19 15:51:28 · 7482 阅读 · 0 评论 -
eclipse创建单文件java工程
终究还是使用了clips,不知道是否还有返回非IDE的那天。尝试试了一下使用eclips创建简单的hello world式的工程并运行,还比较顺利实现了。中间的操作没有参考什么资料,纯粹是根据经验和感觉摸索。1.创建一个工程,选择创建java工程2.填写工程名称,其他的暗示使用默认。3.创建类,并写入类的名字。针对但文件,其实可以选择创建主函数,只是原创 2017-02-20 00:27:28 · 1001 阅读 · 0 评论 -
java初始化与构造方法执行顺序测试
终于又深入一步,开始学习面向对象的编程了。这中间涉及到的很多概念以及思想我之前只是大致有那么一个概念轮廓,了解的十分肤浅。正好趁此机会好好学习了解一下。属性以及方法是Java面向对象编程的两个很重要的概念,而两者分别又涉及多个知识点。这里只是想简单测试一下静态初始化块的一点特性,看一下静态初始化块、普通初始化块以及构造方法的执行顺序。写测试代码如下; 1 package study_原创 2017-02-21 00:24:17 · 2054 阅读 · 0 评论 -
Java封装初探以及Mac下的eclipse操作实现
虽说没有接触过面向对象的封装,但是在我工作的过程中C语言工程中倒是接受过相应的编码规范要求。那就是参数参数的传递或者修改要经过函数来实现,这样做的方式很大程度上是为了保证程序的可靠性。Java中的封装是将类的某些信息隐藏在类的内部,不允许外部的程序直接访问。只能够通过该类提供的方法来实现对隐藏信息的操作或者访问。一般需要写相应的方法,在方法名上其实也没有什么限制。eclipse在这方面提供了不原创 2017-02-21 00:47:26 · 541 阅读 · 0 评论 -
Windows下Java JDK的安装与配置
在Mac上折腾了一段时间了,感觉还不错。前几天手痒买了ThinkPad,这几天再感受一下ThinkPad以及Windows。很多人以博客或者其他的方式比较Linux或者UNIX与Windows的软件安装难易程度以及方便程度,最终得出的结论一般都是前者要好一些。其实,个人倒感觉写这类文章的多半是前者的用户,而那么沉默不发言的一般都是纯粹的Windows还是用者。我个人是UNIX的爱好者,原创 2017-02-21 22:43:31 · 499 阅读 · 0 评论 -
Java学习小结之内部类
内部类就是定义在另一个类里面的类,与之对应,包含内部类的类成为外部类。如此,加单的话描述一下内部类:类中类!写一段测试代码: 编译以及运行结果;从上面的结果中可以看出,经过编译的java程序生成了两个类文件,其中多出的一个就是内部类。而编译生成的内部类有着统一命名规则,那就是:外部类名+$+内部类名+扩展名。从代码可以看出,内部类可以直接原创 2017-02-21 23:33:35 · 381 阅读 · 0 评论 -
Java多态中的引用类型转换理解模型
在我已经掌握的知识中,能够拿来类比的只有强制数据类型转换。不过,看完了慕课网的教程之后感觉两个东西很不一样。根据视频教程中的讲解,我得出一个结论:引用类的强制类型转换要么是信息全都减少的转换,要么是全都增加的转换,不能够既增加又减少。这似乎符合课程中给出的代码例子的执行表现。不过,我自己尝试写代码的时候发现这个结论还是错的。没办法,只能够多尝试一下,在探索中前进了。测试1:测试代码如下:原创 2017-02-23 00:35:28 · 1036 阅读 · 0 评论 -
Java中的类继承与构造方法初始化顺序
关于继承的概念我的基础一向是相对薄弱的,这部分了解的不多,使用的更少。关于面向对象,我了解的或许更少,现在比较深的概念只有一个对象拥有一些属性和方法。 重新学习了一下Java中类的继承以及构造函数的的调用时刻,通过代码实现总结一下,代码如下:packageDemoConstructor; class A { A() { Syst原创 2017-03-18 10:29:57 · 703 阅读 · 0 评论 -
Java类继承中的方法覆写overload
方法的覆写与多态在一定程度上相似,都是对一个同名方法的行为进行修改。不一样的是,覆写是出现在不同类的继承中,而且方法不仅仅是同名而且参数都一致。 示例代码:packageMethodOverWrite; class KongFu{ void fight() { System.out.println("Kongfu can fig原创 2017-03-18 11:28:48 · 535 阅读 · 0 评论 -
Java中的多态与动态绑定
关于Java的多态在慕课网上的教程中已经学到了,但是当时似乎没有看到有动态绑定这么个主题。虽说,动态绑定的相关功能再教程中确实是提到了。 而Java中的多态一般是跟动态绑定放到一块儿说的,我个人的理解是这更加有助于理解Java类继承的相关技术。通过这种方法,可以更好地把多态与重载两个概念给区分开。接下来写一段代码总结一下:packagepkgWulin; class J原创 2017-03-18 13:19:03 · 562 阅读 · 0 评论 -
Java中静态方法(上下文)的使用
从书中看了一下Java中静态方法的使用以及使用注意事项,总结下来的注意事项义工有两点:1,静态方法中不能够直接调用非静态变量;2,非静态方法中可以直接调用静态变量;至于其他的情况,之前基本的代码中都做了测试,不再赘述了。接下来写一段代码,主要是为了验证前面的第一点:public class StaticMethod{int my_num = 123;public static void main(原创 2017-03-15 23:16:04 · 2591 阅读 · 0 评论