
Java语法和OOP
Lawliet_ZMZ
ACMERandNODER
展开
-
Java语法学习1
//Type.java 学习类型系统:基本,引用class Type { //主方法【函数】 public static void main(String[] args) { //Java变量命名和C有区别的一点就是首字母可以为美元符号 byte b,b1; b = 100; b1 = (byte)128;原创 2016-12-09 20:31:16 · 407 阅读 · 0 评论 -
再探Java中的继承加载顺序
public class test2 { static class a { int x = 999; int y = 999; { System.out.println("a--父类非静态方法"); } static { System.out.println(原创 2017-02-20 19:09:28 · 681 阅读 · 0 评论 -
Java对象在内存图示
class Point { int x; int y; void display() { System.out.printf("(%d,%d)\n",x,y); } }class Line { Point start; Point end;}class OOP { public static void ma原创 2017-02-09 20:49:02 · 421 阅读 · 0 评论 -
Java继承和静态-加载顺序
class A { static int cnt = 0; static { System.out.println("a()"); } int a = 1; A() { System.out.println("A()"); System.out.println(cnt); }}class B ex原创 2017-02-14 09:50:58 · 465 阅读 · 0 评论 -
重写和强制转换再调用能编译但不能运行
class A { void foo() { System.out.println("foo() in A"); }//重载 void foo(int a) { System.out.println("foo(int a) in A"); } void foo(double a) { System.out.原创 2017-02-14 11:46:37 · 322 阅读 · 0 评论 -
Java面向接口编程小例子
首先假设一个场景,比如我们是卖手机的,如果顾客来了挑选手机,需要一个个拿不同型号的手机去演示功能为了简便,我们可以制作一个接口,在接口一端连接手机,另一端控制演示手机的各个功能手机都有发短信、打电话两个基本功能,我们可以将接口设置为这两个功能[java] view plain copy public interface Cellphone { p原创 2017-02-15 16:32:26 · 731 阅读 · 0 评论 -
打印Smith数 求质因数&判断质数&数位相加
问题:输出400以内的Smith数。Smith数是指满足下列条件的可分解的整数: 其所有数位上的数字和=其全部素数因子的数字总和例如,9975是Smith数,9975=3*5*5*7*19,即9975的数字和=因子的数字总和=30注意相加都是数位相加,而且是要可以分解的数,意思是质数就不能了。Java实现:import java.util.*;cl原创 2017-03-18 17:33:31 · 1831 阅读 · 0 评论 -
一个java源文件为什么只能有一个public类呢?当这个类被修饰public的话,为什么源文件名必须要与类名相同呢?
Java编程思想中的一段话:当编写一个java源代码文件时,此文件通常被称为编译单元(有时也被称为转译单元)。每个编译单元都必须有一个后缀名.java,而在编译单元内则可以有一个public类,该类的名称必须与文件的名称相同(包括大小写,但不包括文件的后缀名.java)。每个编译单元只能有一个public类,否则编译器就不会接受。如果在该编译单元之中还有额外的类的话,那么在包之外的世界是无转载 2017-04-05 17:58:06 · 828 阅读 · 0 评论 -
浅谈深拷贝和浅拷贝
package com.wgw.entities;public class MyDate { private int year; private int month; private int day; public int getYear() { return year; } public void setYear(int year) { this.year = y原创 2017-04-05 19:14:06 · 406 阅读 · 0 评论 -
Java final和static总结
坑爹的某某某班今天要考试了,又要考OOP,坑爹的我又要花一下午时间来浪费在复习上面。(为了考试去学习真是浪费时间)但是趁这次机会总结下final和static的用法吧final:1. final成员变量一般的成员变量是随类初始化或对象初始化而初始化的。当类初始化时,系统会为该类的类field分配内存,并分配默认值。也就是说,当执行静态初始化块时可以对类Field原创 2017-04-25 15:39:05 · 324 阅读 · 0 评论 -
接口和抽象类有什么区别
接口和抽象类有什么区别你选择使用接口和抽象类的依据是什么?接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象。抽象类表示的是,这个对象是什么。接口表示的是,这个对象能做什么。比如,男人,女人,这两个类(如果是类的话……),他们的抽象类是人。说明,他们都是人。人可以吃东西,狗也可以吃东西,你可以把“吃东西”定义成一个接口,然后让这些类去实现它.所以,在高级语言转载 2017-04-25 16:21:59 · 308 阅读 · 0 评论 -
简探this和super
路漫漫其修远兮,吾将上下而求索。——屈原《离骚》 昨天写this用法总结的时候,突然产生了一个问题,请教别人之后,有了自己的一点认识。还是把它写下来,为大家更好的认识提供一点思路。1)有人写了个很好的初始化属性的构造函数,而你仅仅想要在其中添加另一些自己新建属性的初始化,这样在一个构造函数中调用另外一个构造函数,可以避免重复的代码量,减少工作量;2)在一个构造函数中调用另外原创 2017-02-20 20:55:19 · 840 阅读 · 0 评论 -
Java面向接口编程小例子 2
//防火门,防盗门,防火防盗门,门,防盗,防火 interface Dfire { int Dnum = 100; void fire(); } interface Dtheif { int Dnum = 100; void theif(); } abstract class Door {原创 2017-02-17 17:23:37 · 814 阅读 · 0 评论 -
用Java面向对象思想实现一个微博的功能(未完)
大概功能:1.用户,用户有关注的朋友,被关注的是粉丝,关注和被关注有交互。2.发送状态消息的功能,状态消息有回复功能3.消息,回复,关注,粉丝的打印4............等第一次真正的感受都面对对象编程的魅力,对This引用有了进一步的认识,想到以前学习C++时的面对对象,C++中里面也有个个This指针,Java真的是继承了C++的诸多优点。原创 2017-02-10 16:00:13 · 718 阅读 · 0 评论 -
Java语法学习3
感觉今天学的有用的也就是Atom的快捷键吧,那些小程序本来之前用C/C++敲了很多算法程序,所以Atm这个也没什么意思。1.进入多选模式,上下是对齐的,ctrl + alt + up/down,上下箭头,Esc退出模式。2.在格式化输出,显示中,和C的差不多,System.out.printf("%03d元:%5d张\n",100,n100);,%03d,默认右对齐,占3位,不够由0填充。...原创 2016-12-12 20:13:48 · 341 阅读 · 2 评论 -
Java语法学习2
一.byte b =2;b = b + 2;用javac编译会出错,因为2是整型,编译出错提示信息为in转byte会发生丢失,然后b+=2;用javac编译,没出错。在Java中b=b+c和b+=c,好像效果是一样的,但运算内部机制是不同的,这是Java陷阱,在SCJP中有很多就是考的这种陷阱题,和《C语言陷阱》???二.int n = 1;int x =原创 2016-12-10 21:08:57 · 231 阅读 · 0 评论 -
Java语法学习4
亦或^运算除了交换之外leetcode上还有一道有趣的算法题,其中有一位大牛发布了让别人惊讶的源码,短短几行,巧妙运用位运算亦或的特性。// 存在奇数次的数是哪个class Bit { public static void main(String[] args) { //^异或 //leetcode.com int[] n = {9,4原创 2016-12-23 21:49:41 · 539 阅读 · 0 评论 -
为什么Java byte 类型的取值范围是-128~127
概念:负数的补码是该 数 绝 对 值 的 原 码 按 位 取 反 ,然 后 对 整个数 加 1步骤:1.确定byte是1个字节,也就是8位2.最大的应该是0111 1111,因为第一位是符号位,0表示正数3.最小的应该是1000 0000,同理,表示负数最小的(1111 1111是最大的负数-1)4.0111 1111即1275.1000 0000按原创 2016-12-23 22:11:14 · 384 阅读 · 0 评论 -
Java语法学习5
先巩固下Java的一些基本语法吧,还有还多等寒假考完了再搬上来。如何定义java中的方法所谓方法,就是用来解决一类问题的代码的有序组合,是一个功能模块。语法:1、 访问修饰符:方法允许被访问的权限范围, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示该方法可以被其他任何代码调用2、 返回值类型:方法返回值的转载 2017-01-08 23:46:21 · 467 阅读 · 0 评论 -
Java大数处理_用法整理
Ⅰ基本函数:1.valueOf(parament); 将参数转换为制定的类型 比如 int a=3; BigInteger b=BigInteger.valueOf(a); 则b=3; String s=”12345”; BigInteger c=BigInteger.valueOf(s); 则c=1234原创 2017-01-22 15:41:40 · 2699 阅读 · 0 评论 -
Java BigDecimal与科学计数法的问题
BigDecimal是处理高精度的浮点数运算的常用的一个类当需要将BigDecimal中保存的浮点数值打印出来,特别是在页面上显示的时候,就有可能遇到预想之外的科学技术法表示的问题。一般直接使用 BigDecimal.toString()方法即可以完成浮点数的打印。如: System.out.println( new BigDecimal("10000000000").toS转载 2017-01-27 21:24:45 · 2651 阅读 · 0 评论 -
String类型的比较(为什么比较字符串是否相等时不用=号用equals()的)
class StringDemo { public static void main(String[] args) { char[] msg = {'h','e','l','l','o'}; String t1 = "hello"; String t2 = new String("hello"); String t3 = ne原创 2017-02-07 16:57:13 · 7473 阅读 · 0 评论 -
Java中OOP对象和引用
看注释:class Person2 { String name; int score; String phone;}class App { public static void main(String[] args) { int size = 20; Person p1 = new Person(); Per原创 2017-02-08 23:35:38 · 617 阅读 · 0 评论 -
java中next和nextline的区别
next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。简单地说,next()查找并返回来自此扫描器的下一个完整标记。完整标记的前后是与分隔模式匹配的输入信息,所以next方法不能得到带空格的字符串而ne原创 2017-02-22 15:38:14 · 600 阅读 · 0 评论 -
JAVA实现各种排序算法----更新中----
以下纯属练手,先不考虑优化,接近原版思想快速排序:也是用到最多的排序方法,这里写的是我的启蒙思想啊哈算法里面的样式,每个元素递归执行log(n)次,n个元素,时间复杂度为nlog(n)import java.util.Scanner;class quickSort { static int[] a = {8,6,4,5,1,7,3,2}; static原创 2017-01-10 17:57:47 · 529 阅读 · 0 评论