Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.
Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.
Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.
Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.
Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.
Čau
Programuju Java Applet (pomocí JApplet) a nelíbí se mi implicitní ColorChooser tak sem si naprogramoval svůj. Nedělám s Javou moc dlouho.. no třídu svého ColorChooseru (MyColorChooser) jsem dal do speciálního souboru a protože v něm mám programovaných víc svýcho komponent tak sem to zabalil do třídy MyColors:
<code>
MyColors.java:
public class MyColors{
public class MyColorChooser extends javax.swing.JPanel{
private SpectrumSlider Slider;
...
public MyColorChooser(){
...
}
...
}
public class SpectrumSlider extends javax.swing.JLabel {
float hue, saturation, brightness;
int WIDTH, HEIGHT, SIDE, VERTICALBORDER;
SpectrumSlider(){this(15, 180);}
SpectrumSlider(int a, int b){
super();
...
}
...
}
...
}
</code>
Mno... a v souboru s hlavní třídou - MyJApplet.java mám kód
<code>
private MyColors.MyColorChooser ColorChooser
</code>
To funguje bez problémů.. Tohle však háže chybu <code> ColorChooser = new MyColors.MyColorChooser(); </code> C:\...\NetBeansProjects\MyJApplet\src\MyJApplet.java:110: an enclosing instance that contains MyColors.MyColorChooser is required Nevím co s tím, zdalipak se najde laskavá duše co poradí? Dííík..
Ne ze bych nekdy nejaky aplet napsal ... , ale sdruzovani trid se v jave resi pres baliky (ostatne nepouzivas defaultni balik, ze:). Plati co verejna trida, to soubor.
Vnorene tridy viz odpoved vyse. (Nemas k nim primy pristup, potreboval bys (statickou?) instanci vnejsi tridy, ktera by ti poskytla instanci tridy vnitrni -- to je to, co ti ta hlaska rika.)
Takze pokud to fakt nepotrebujes (neznam konkretne aplety), tak to dej do zvlastnich souboru v jednom baliku (cz.moje.utils whatever).
static, můžete vytvářet jejich instance (analogicky k přístupu ke statickým proměnným nebo volání statických metod) nezávisle na tom, zda máte instanci vnější třídy. Samozřejmě pouze pokud k nim máte přístup, platí obvyklý význam slov public, protected, private. Taková vnořená třída pak pochopitelně nemá přístup k instančním členům vnější třídy.
Vnořená třída, která není static, se nazývá vnitřní třída a je součástí instance vnější třídy. Je to užitečné, ale pokud tomu člověk příliš nerozumí, měl by používat pravidlo každá vnořená třída bude static. Zatímco u statických vnořených tříd má veřejný přístup (public) často smysl, u vnitřních tomu tak nebývá, většinou jsou soukromé (private) jenom pro potřeby vnějších tříd. Každopádně pokud je to opravdu potřeba, lze toto:
public class A {
...
public class B {
...
}
}
---
A a = new A();
A.B b = a.new B()
Ovšem úpěnlivě vás prosím: NEDĚLEJTE TO!
Fakt to moc nepomáhá čtení kódu, tahle konstrukce je hodně neobvyklá.
Yep dík moc, stih sem na to přijít ještě včera :D Ale díky moc
Tiskni
Sdílej: