jdk

Форк
0
/
LingeredAppWithInterface.java 
61 строка · 2.1 Кб
1
/*
2
 * Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4
 *
5
 * This code is free software; you can redistribute it and/or modify it
6
 * under the terms of the GNU General Public License version 2 only, as
7
 * published by the Free Software Foundation.
8
 *
9
 * This code is distributed in the hope that it will be useful, but WITHOUT
10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12
 * version 2 for more details (a copy is included in the LICENSE file that
13
 * accompanied this code).
14
 *
15
 * You should have received a copy of the GNU General Public License version
16
 * 2 along with this work; if not, write to the Free Software Foundation,
17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18
 *
19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20
 * or visit www.oracle.com if you need additional information or have any
21
 * questions.
22
 */
23

24
import jdk.test.lib.apps.LingeredApp;
25

26
import java.lang.ref.Reference;
27

28
interface Language {
29
    static final long nbrOfWords = 99999;
30
    public abstract long getNbrOfWords();
31
}
32

33
class ParselTongue implements Language {
34
    public long getNbrOfWords() {
35
        return nbrOfWords * 4;
36
    }
37
}
38

39
public class LingeredAppWithInterface extends LingeredApp {
40

41
    public static void main(String args[]) {
42
        ParselTongue lang = new ParselTongue();
43
        Language muggleSpeak = new Language() {
44
            public long getNbrOfWords() {
45
                return nbrOfWords * 8;
46
            }
47
        };
48

49
        // Not tested at this point. The test needs to be enhanced
50
        // later to test for the sizes of the Lambda MetaFactory
51
        // generated anonymous classes too. (After JDK-8160228 gets
52
        // fixed.)
53
        Runnable r2 = () -> System.out.println("Hello world!");
54
        r2.run();
55

56
        System.out.println(lang.getNbrOfWords() + muggleSpeak.getNbrOfWords());
57

58
        LingeredApp.main(args);
59
        Reference.reachabilityFence(lang);
60
    }
61
}
62

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.