l'apprentissage de base zéro Java

Le premier chapitre de programmation Java (Fundamentals dire 30)

01 | Cours

02 | examen du contenu

03 | environnement de développement pour la construction (Mac OS)

04 | Compile programme HelloWorld et exécution (Mac OS)

05 | environnement de développement pour la construction (Windows)

06 | programme HelloWorld compilation et exécution (Windows)

07 | Programme détaillé HelloWorld

08 | installer et utiliser IntelliJ environnement de développement intégré IDEA (Mac OS)

09 | installer et utiliser IntelliJ environnement de développement intégré IDEA (Windows)

10 | de l'addition et la soustraction à la multiplication et la division variable

11 | programme Revisited calcule les mathématiques

12 | types de données de base en Java

13 | opérateurs Java en

14 | bits de Java Opérateurs

15 | types de grammaire de base de données plus

16 | jeu de caractères et l'encodage des chaînes

. 17 | opérateurs et types de données sont résumées

18 | exécution déroulement du programme if-else déclaration (sur)

19 | exécution déroulement du programme if-else déclaration (sous)

20 | boucle de programme pour la déclaration

21 | blocs de code et portée des variables

22 | tandis que les instructions de boucle de programme

23 | flux d'exécution de l'instruction switch du programme

cycle, et un jugement sommaire (sur) | 24

25 | Cycle et un jugement sommaire (sous)

26 | sauver avec un éventail de réalisations

27 | compréhension des variables et des tableaux (sur)

28 | les variables et la compréhension des tableaux (en bas)

29 | tableaux multidimensionnels

30 | gestionnaire flexible avec une matrice

La deuxième programmation orientée objet Java chapitre (soit 74)

31 | classe (classe)

32 | Sur les classes et objets

33 | type de référence compréhension (a)

34 | reconnaître un type de référence (sous)

35 | classes, objets et références relation

36 | type tableau compréhension

37 | La valeur par défaut est référence null

38 | aiment utiliser la même classe de type personnalisé

39 | package Java et le modificateur d'accès (a)

40 | modificateur de package Java et l'accès (inférieur)

41 | pour construire un petit supermarché

42 | Sur le débogueur IntelliJ

43 | Méthode: Laissez l'objet de marchandises a un comportement

44 | Retours: Let Merchandise calcul du bénéfice brut

45 | Argument: Laissez calculer Merchandise le prix total des articles multiples

46 | comment les paramètres et les valeurs de retour sont passés

47 | paramètres, les variables distinguent locales et le site de l'instance

48 | masquer cette auto-référentielle

49 | compris que la méthode: un des blocs de code spéciaux

50 | appelle la méthode de compréhension: un code spécial pour sauter

51 | pour ajouter des classes Java et méthodes Notes

52 | classe d'objets mature pour faire les choses à leur

53 | signatures de méthode et surcharge

54 | règles de correspondance des paramètres surchargé

55 | constructeur: Exemple de configuration Méthode

Et appeler Surcharge l'autre constructeur | 56

57 | variables statiques

58 | méthode statique

59 | méthode statique surcharge

60 | statiques et variables statiques initialisation bloc

61 | modificateurs de visibilité méthodes et propriétés

62 | nouvelle compréhension d'un vieil ami: Math et Scanner (sur)

63 | nouvelle compréhension d'un vieil ami: Math et Scanner (sous)

64 | Le plus étrange familier: String (sur)

65 | Le plus étrange familier: String (sous)

66 | nouvelle compréhension d'un vieil ami: classe principale Méthode et système

67 | frères de classe String

68 | L'héritage: rendre plus facile pour les biens d'ajouter de nouvelles catégories

69 | objet sous-classe caché dans un objet parent

70 | couvrant: Vous voulez un peu différentes sous-classes

71 | super: l'objet parent et un pont

72 | super: appeler le constructeur de la classe parente

73 | références relation d'attribution des classes parent et enfant

74 | polymorphisme: Quelle méthode appel à la fin? (On)

75 | polymorphisme: Quelle méthode appel à la fin? (Basse)

76 | polymorphisme dans plus de grammaire (sur)

77 | polymorphisme en plus de points de grammaire (bas)

78 | opérateur instanceof

79 | inherit contrôle d'accès exclusif: protégé

80 | qualification finale (sur)

81 | qualification finale (sous)

82 | inherit dans la méthode statique

83 | épisode: pour un autre cycle d'écriture

84 | millions ancêtre classe: classe d'objets

85 | hashCode et méthode equals (sur)

86 | hashCode et méthode equals (sous)

87 | toString

88 | Sur la classe de classe

89 | Sur la réflexion (sur)

90 | Sur la réflexion (bas)

91 | trois éléments orientés objet: encapsulation, l'héritage et le polymorphisme

92 | enumerate: la définition des catégories de biens

93 | Interface: LET types de produits les plus abondants (sur)

94 | Interface: make type de produit plus riche (inférieur)

95 | classe abstraite: un mélange d'interfaces et de classes

96 | Il y a plusieurs façons le code d'interface

97 | plus de contenu dans le code d'interface

98 | classes internes statiques

99 | membres de la classe interne

100 | classe interne locale

101 | classe anonyme

Résumé classe spéciale | 102

103 | supermarché LET haut et en cours d'exécution: articles de conception

104 | supermarché LET et en cours d'exécution jusqu'à: articles du Code

Le troisième chapitre de la gestion des exceptions Java (9 voix)

105 | connaissance anomalie: catch try

106 | classification Java d'exception

107 | syntaxe jeté

108 | passé l'exception Java

109 | exception personnalisée

110 | transfert anormal n'est pas Lingboweibu

111 | prise try finally

112 | ressources de récupération automatique essayer déclaration

113 | exceptions communes en Java

Chapitre IV d'outils communs comme Java et nouvelle syntaxe (Lecture 22)

114 | Collection Introduction au Groupe

115 | Collection de la liste (sur)

116 | Collection de la liste (bas)

117 | Collection de Set

118 | Bref générique (sur)

119 | Bref générique (inférieur)

120 | Revisited générique

121 | Interface Iterator

122 | Carte: cartographie clé et la valeur

123 | définir votre propre commentaire

124 | Lambda VS classe anonyme (sur)

125 | cours Lambda VS anonymes (sous)

126 | types de boxe automatique et unboxing

127 | Java dans la classe File

128 | Java I / O 简介

129 | écrire le contenu d'un applet de fichier

130 | lire le contenu de l'applet de fichier

131 | Réseau substantifs Communication Profil

132 | applet de communication (Simple Network sur)

133 | applet de communication (Simple Network sous)

134 | Simple explore le programme Web

135 | 和 JDK JRE

Le cinquième chapitre dans les discussions Java (dire 19)

136 | fil de connaissance

137 | créer votre propre fil

138 | fil revisitée

139 | multithreading: le chaos a commencé

140 | commande synchrone de synchronisation

141 | commande synchrone d'attente notifier

142 | multithreading modèle classique: les producteurs et les consommateurs

143 | synchronisation de fil de jointure

144 | Deadlock

145 | les variables fil spécifiques ThreadLocal

146 | tâches régulières

147 | rôle du mot-clé volatile

Contraint de récupérer des données de la mémoire

public class AccessMemoryVolatile {

    public volatile long counterV = 0;
    public long counter = 0;

    public static void main(String[] args) {
        int loopCount = Integer.MAX_VALUE / 30;
        // TODO 只是为了演示 volatile 每次访问都要直达内存,不能使用缓存,所以耗费的时间略多
        AccessMemoryVolatile accessMemoryVolatile = new AccessMemoryVolatile();
        Thread volatileAdder = new Thread(() -> {
            long start = System.currentTimeMillis();
            for (int i = 0; i < loopCount; i++) {
                accessMemoryVolatile.counterV++;
            }
            System.out.println("volatile adder takes " + (System.currentTimeMillis() - start));
        });
        volatileAdder.start();

        Thread justAdder = new Thread(() -> {
            long start = System.currentTimeMillis();
            for (int i = 0; i < loopCount; i++) {
                accessMemoryVolatile.counter++;
            }
            System.out.println("simple adder takes " + (System.currentTimeMillis() - start));
        });
        justAdder.start();
    }

}

Instruction qui affecte le réarrangement

package com.geekbang.learnvolatile;

public class VolatileAppMain {
    public static void main(String[] args) {
        DataHolder dataHolder = new DataHolder();

        Thread operator = new Thread(() -> {
            while (true) {
                dataHolder.operateData();
            }
        });
        operator.start();

        Thread checker = new Thread(() -> {
            while (true) {
                dataHolder.check();
            }
        });
        checker.start();
    }
}

148 | justification paquet simultané

149 | simultanée paquet atomique au groupe

150 | verrouillage paquet simultané

151 | structure de données de paquets simultanées

152 | package simultané de pool de threads

153 | salle de chat me suis ouvert (sur)

154 | salle de chat me suis ouvert (sous)

Chapitre VI combat de programmation Java (disons 16)

155 | Qu'est-ce que l'apprentissage d'une langue

156 | Java Platform Présentation

157 | concept de Maven Présentation

158 | Installation et configuration Maven

159 | créer un projet simple Maven

160 | un texte tiré du gadget fichier pptx

161 | Maven commandes fréquemment utilisées et des plug-ins

162 | IntelliJ Plus de fonctionnalités

163 | bibliothèque d'apprentissage vaut introduction

164 | comment poser des questions ne seront pas grondé sur Stack Overflow

165 | sur la programmation

166 | petites caractéristiques du programme de jeu défini

167 | petite programmation de jeux et de la division Module

168 | analyse de code applet de jeu

169 | Utiliser Swagger pour créer un service Web Spring Boot

170 | Conclusion

Publié 105 articles originaux · louange gagné 33 · vues 30000 +

Je suppose que tu aimes

Origine blog.csdn.net/github_38596081/article/details/104315843
conseillé
Classement