(。・・)ノ~个人java学习随笔记录
基本认识
1.编程思维
根据这几天的java学习,编写程序最重要的就是要有一个清晰的思路。语法上的错误可以跟随着不断的联系与学习来弥补,清晰的思维却只有自己来前期模仿,后面慢慢摸索形成一套属于自己的思维方式。
2.编程方向
程序编写方面考虑的是完成某个任务需要的东西(对象),也就是达成目标需要用什么来完成。程序主要编写思路也是围绕这些东西来写,而不是围绕完成这个目标的步骤。(这就是所谓的面向对象编程,和C语言最大的区别)
3.编程习惯
随着以后编写的程序的不断扩张,程序会越来越大,需要的对象也会越来越多,对象完成的方法也会不断加多,因此,我们需要提前培养自己程序模块化的思想。不要什么模块都杂堆在主函数里面,这样修改起来很麻烦,程序冗长,也不便于其他程序员阅读你的程序,毕竟以后一个大的工程都是大家几个程序员一起完成,所以我们有必要为了别的程序员考虑自己的程序编写格式。适当的注解,不但有利于别人阅读自己的程序,时间久了,自己来看自己编写的程序也不会有太久的迷茫时间。模块化就是把有相似内容的模块归类放在一起,相当于平时整理自己的家一样,厨房用具放在厨房,衣物放在衣柜里。在后面找错和修改程序时,也能更方便快捷的完成需要的要求。
4.关于java
1.简单性
c++的“纯净”版本,容易入手学习;最早的java开发来就是用于小型机器(家电),也就是程序小。
2.面向对象
程序设计时,重点放在达到目的所需的对象(物体),而不是使用的方法。
用木匠打比方,面向对象的木匠注重的是木桩,非面向对象的木匠注重的是工具。
3.分布式
java有一个丰富的例程库,使java程序能通过URL打开和访问网络上的对象。
4.健壮性
java开发时,投入了大量的精力用于早期的(编写程序期间)问题检查、后期动态(程序运行)的检测,使得java编译器能检测出许多其他语言只能在运行时候才能检测出来的问题。
5.安全性
在安全方面,java可以构建一定程度的放病毒、防篡改的系统。
6.体系结构中立
java编译器生成一个体系结构中立的目标文件格式(一种编译过的代码),只要有java运行时系统,就可以在许多不同的处理器上运行。
7.可移植性
Java中数据类型是有固定的大小,其他语言都是可以在一定限制条件下(例如 short int 小于 int 小于 long int)随意更改的。虽然没有做到全部都可以移植(与用户界面有关的部分除外),其他方面还是能很好地支持平台独立性。
8.解释性
java解释器可以在任何移植了解释器的机器上执行Java字节码(编译器编译程序代码后产生的)。联系6.7.点
9.高性能
字节码可以在运行时动态的翻译成对应运行这个应用的特定CPU的机器码(计算器直接认识的)。
10.多线程
一个程序能同时使用更多的处理器,并让他们一直工作。运行时,处理器需要等待服务器的响应,这时候需要并发程序设计来确保用户界面不“冻住”。
11.动态性
java适应不断发展的环境。库中可以不断自由添加新方法,以及实例变量,然而对客户端却不会产生任何影响。
(。・・)ノ~个人java学习随笔记录的更多相关文章
- JAVA 学习随笔 : JDK Enhancement Process JEP process
是时候寻找一个学习JAVA的路径了 ---- JDK Enhancement Process Oracle发布了JDK增强提案与路线图进程,目的在于鼓励OpenJDK提交者贡献点子和扩展以改进Open ...
- java学习随笔--- 捣蛋vector
最近比较有时间啦,有时间搞下java,个人觉得学这门语言语法太多啦,不一一去学习啦,心血来潮,挂了个struct2的源代码,一入深似海啊,看得我天花缭乱,从最简单的开始吧 public static ...
- Java学习随笔5:Java多线程编程
1. 线程是程序中单独顺序的控制流,线程本身依靠程序进行运行,线程是程序中的顺序控制流,只能使用分配给程序的资源和环境. 2. 进程是执行中的程序,一个进程可以包含一个或多个线程,但至少要包含一个线程 ...
- Java学习随笔4:Java的IO操作
1. IO流的作用是读写设备上的数据,如硬盘文件.内存.键盘.网络等.根据数据走向,可分为:输入流和输出流:根据处理的数据类型,可分为:字节流和字符流.字节流可以处理所有类型的数据,如MP3.图片.视 ...
- Java学习随笔3:遍历文件夹及文件的读取和写入
import java.io.File; /** * 遍历文件夹 */ public class ScannerFile { public static void main(String[] args ...
- Java学习随笔2:Java复合赋值表达式的小问题
问题:i += j只是i = i + j的简写么? 答案:非也!看下面的程序: int i = 5; long j = 8; i += j; // 可以通过编译且结果正确 i = i + j; // ...
- Java学习随笔1:Java是值传递还是引用传递?
Java always passes arguments by value NOT by reference. Let me explain this through an example: publ ...
- JAVA学习随笔-.class
类名.class是获得这个类所对应的Class实例.从面向对象的角度上来看,类也是对象,它们是类这个类对象,听起来有些抽象,但是在java中的实现就是所有的加载进来的类在虚拟机中都是一个java.la ...
- Java学习随笔——RMI
RMI(Remote Method Invocation)远程方法注入,用来实现远程方法调用,是实现分布式技术的一种方法.RMI提供了客户辅助对象和服务辅助对象,为客户辅助对象创建了和服务对象相同的方 ...
随机推荐
- Unity3D NGUI刮刮卡效果
线上效果 确保你的纹理的read/write 是勾选的,纹理格式是 RGBA32的 //代码 using UnityEngine; [RequireComponent(typeof(UITexture ...
- laravel安装笔记
一.安装composer 安装之前将\php\php.ini文件中的php_openssl.dll扩展库开启,否则composer在安装过程中会出现错误提示. (我在安装过程中发现apache目录下的 ...
- linux 文件权限、类型、命名规则
文件权限 -rwxr-x--t 文件类型 用户权限 组权限 其他用户权限 umask是一个掩码,设置文件的默认权限,会屏蔽掉不想授予该安全级别的权限,从对象的全权权限中减掉:对文件全权权 ...
- JavaScript高级程序设计学习笔记--高级技巧
惰性载入函数 因为浏览器之间行为的差异,多数JavaScript代码包含了大量的if语句,将执行引导到正确的代码中,看看下面来自上一章的createXHR()函数. function createXH ...
- des (C语言)
/** * \file des.h * * \brief DES block cipher * * Copyright (C) 2006-2010, Brainspark B.V. * * This ...
- 《C#本质论》读书笔记(15)使用查询表达式的LINQ
15.1 查询表达式的概念 简单的查询表达式 private static void ShowContextualKeywords1() { IEnumerable<string> sel ...
- ajax传递array参数
var ticketId = new Array(); for(var i = 0; i < checkboxes.length; i++) { ticketId.push(checkboxes ...
- 2016"百度之星" - 资格赛(Astar Round1)
逆元 1001 Problem A 求前缀哈希和逆元 #include <bits/stdc++.h> typedef long long ll; const int MOD = 9973 ...
- C语言 右左法则
C指针声明解读之左右法则 C语言所有复杂的指针声明,都是由各种声明嵌套构成的.如何解读复杂指针声明呢?右左法则是一个既著名又常用的方法.不过,右左法则其实并不是C标准里面的内容,它是从C标准的声明规定 ...
- Media Formatters in ASP.NET Web API 2
原文:http://www.asp.net/web-api/overview/formats-and-model-binding/media-formatters 1. 网络媒体类型 媒体类型,也叫作 ...