If we consider this code below
pragma solidity 0.8.0;
interface testInterface{
function externalFunction(uint _test) external returns(bool);
}
contract abc{
uint public var1;
function testTryCatch() public {
var1 = 22;
try testInterface(address(0)).externalFunction(var1) {} catch {}
}
}
it is sure function call will fail on try
line , when call will finish value of var1
will be 22 or 0 ? if 0 then what is use of try catch and differences from other language if 22 then is it not violating the concept of blockchain ?