加载中…
个人资料
马克-to-win
马克-to-win
  • 博客等级:
  • 博客积分:0
  • 博客访问:78,239
  • 关注人气:5
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
访客
加载中…
好友
加载中…
评论
加载中…
留言
加载中…
博文
标签:

java

finally

分类: java
马克-to-win:finally有什么意义呢,在现实中?比如你开了一个流处理文件,可能没开成功,或开成功了,但后面的操作失败了,但不管你怎么样,你必须在一个地儿把它关闭,那就是finally块儿。

例: 1.10.1(try catch全齐,正常情况)
public class Test {
    public static void main(String[] args) {
        try
        {
            int userInput=0;
            int I = 6 / userInput;
        }
        catch(Exception e)
        {
            System.out.println(e);
        }
        finally
 &
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

partitioner的用法

mapreduce

hadoop

分类: Hadoop与MapReduce
Partitioner的用法:

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

topn问题

mapreduce

hadoop

马克java社区

马克-to-win

分类: Hadoop与MapReduce

topN问题:

防盗版实名手机尾号:73203。topN问题就是输出每组中最大的一个或几个。为什么说是一个或几个呢?因为输出一个或者输出几个的算法是一样的。我们下面以输出一个为例子,做一个示范。 

6个订单如下:
o1,p2,250.0

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

排序sort

hadoop

mapreduce

分类: Hadoop与MapReduce
排序sort:

防盗版实名手机尾号:73203。注意:想自己实现Sort得不偿失,但如想借助Hadoop MapReduce技术框架排序,key必须实现WritableComparable接口。具体做法见下。需求是先按id比,再按amount比。
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

java

马克java社区

马克-to-win

内存泄露

分类: java
java的垃圾回收与内存泄露的关系:【新手可忽略不影响继续学习】 
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。
马克-to-win:上一节讲了,(i)对象被置成null.(ii)局部对象(无需置成null)当程序运行到右大括号.(iii)匿名对象刚用完,垃圾回收线程就早早晚晚都能把它过去占的内存给回收了。这么说,java中难道就没有c++的内存泄露的问题了吗?(内存泄露的定义就是: 咱自己程序不用的内存,系统本应回收但由于各种原因却没有回收成功)马克-to-win:答案: 错,java中有内存泄露。下面我们就通过一个例子来说明。下面的例子中,Mark_to_win m作为实例是占有内存空间的。即使后来m = null;把它置为null,垃圾回收线程也回收不了它占有的空间。因为等我们后面集合框架学习了Vector以后,你就会知道:Vector v是一个类似数组的东西。马克-to-win:任何通过v.add(m);加到Vector里的东西,Vector都会保留一个对它的引用。正因为有这个引用,垃圾回收系统当中的有向图会认为,这个对象还是可达的,所以不会回收它的内存空间。因为size_Make_to_win非常大,(是maxMemory的0.8倍),所以系统最后就崩溃了。马克-to-win: 用专业
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

java

马克java社区

马克-to-win

类中多个synchronized

分类: java

类中多个Synchronized方法  

下面给出一个例子,说明一个class中有两个方法synchronized的情况。它们互相阻挡的用法和上面的“一个方法有synchronized”的情况是一样的。
例1.9.5:
class A {
    public synchronized void f1() {
        for (int i = 0; i < 3; i++) {
            try {
                Thread.sleep(1000);
            } catch (Exception e) {
            }
            System.out.println('f1 i = ' + i);
        }
    }
    
    public synchr

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

java

马克java社区

马克-to-win

javaerror

分类: java

顺便提一句, 和Exception 相对应的,还有Error,Error(错误)表示系统级的错误和程序不必处理的异常,是JRE(java运行环境)的内部错误或者硬件问题,比如,另外 某一处地方的bug引起的内存溢出,内存资源不足等,OutOfMemoryError,对这类错误,程序基本无能为力,比如下例中,catch不被执行 (其实虚拟机是有能力执行的,否则finally为什么被执行?但就是这原则,意味着,程序员们不要试图在catch中做什么,你做了, 我也不执行,因为是Error,而不是Exception)只能退出。

例:

public class Test {

    int size_Make_to_win = (int) (Runtime.getRuntime().maxMemory() * 0.93);
    public void allo() {
        byte[] data1 = new byte[size_Make_to_win];
    }
    public static void main(String[] args) {
        Test t = new Test();
        try{
        t.

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

java

接口概念

马克java社区

马克-to-win

分类: java

6.总结性深一层次综合剖析接口概念【新手可忽略不影响继续学习】

通过以上的学习, 我们知道,所有定义在接口中的常量都默认为public、static和final。所有定义在接口中的方法默认为public和abstract。马克-to-win:当时Sun公司为什么要把java的接口设计发明成这样?

更多请见:http://www.mark-to-win.com/tutorial/java_4_Deep.html

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

java

object类的finalize的

马克java社区

马克-to-win

分类: java

Object类的finalize的用法:

马克-to-win:java当中有个垃圾回收机制,具体说,就是当一些对象被创建使用之后若不再使用的话{比如(i)对象被置成null.(ii)局部对象(无需置成null)当程序运行到右大括号.(iii)匿名对象刚用完},就会变成垃圾占用空间,JAVA的自动垃圾回收(gc)线程会在适当的时候自动运行,回收内存。马克-to-win: 再具体一点,对象被创建之后,垃圾回收(gc)系统就开始跟踪这个对象的使用情况。垃圾回收系统采用有向图的方式:开始时对象一定是可达的,刚把它置为null时,它也就变成了不可达的了,这时就是所谓的垃圾。垃圾回收系统就会回收这些内存空间。马克-to-win:回收之前,先调用该对象的finalize方法。让其做一些最后的收尾工作。见下例,当p1 = null;时,Java的垃圾回收线程会在适当时间点回收p1对象占据的内存空间。马克-to-win:回 收之前,首先调用p1的finalize()。但是sun公司不保证finalize方法会被及时地自动执行。所以我们加了一句,System.gc ();建议系统回收一下垃圾。gc代表garbage collection(垃圾回收),finalize方法就被执行了。

例2.1.4---

cl

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

java

内存泄露

马克java社区

马克-to-win

分类: java

内存泄露总结:【新手可忽略不影响继续学习】 

马克-to-win: 上节提到了内存泄露实质:程序员认为无用的对象,由于各种原因(粗心等),还有指针或参考指向它, 就造成了泄露。本书不是内存泄露的专业书籍,(内存泄露本身也是java中一个非常高级深入的话题。不适合初学者研究。)只是让作者明白内存泄露的原理。同时泛泛的给出内存泄露的研究方向。
1)单态模式中的静态类生命周期和程序一样长。持有短生命周期的对象时,如未及时释放指向此对象的指针,就会造成泄露。
2)团队开发当中,张三工程师的对象,被李四工程师引用后,张三释放了,但李四并没有释放。
3)使用缓存技术或日志技术时,由于设计成键和时间戳有关系,删除条目时就不能正确删除。造成删除不了,从而内存泄漏。

另外:监听器,数据库连接等不当使用造成泄露。

更多请见:http://www.mark-to-win.com/tutorial/java_3_MemoryLeak.html

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

抽象类可以继承实体类

java

马克java社区

马克-to-win

分类: java

例1.7.2(抽象类可以继承实体类)-

class VehMark_to_win {
    void steer() {
        System.out.println('Turn steering wheel');
    }
}
abstract class Cart extends VehMark_to_win {
    //因为Cart是抽象的, 可以这里还是什么都不干
}
abstract class Car extends VehMark_to_win {

    void move() {
        System.out.println('move');
    }
}
class Lim extends Car {
    //之所以这里可以什么都不干, 而且还不是抽象的,马克-to-win: 因为父类Car全部实现了Veh的抽象方法
}
public class Test {
    public static void main(String[] args) {
        Lim l = new Lim();
        l.move();
    }
}

更多

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
  

新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有